<SEC-DOCUMENT>0001493152-26-036362.txt : 20260806
<SEC-HEADER>0001493152-26-036362.hdr.sgml : 20260806
<ACCEPTANCE-DATETIME>20260806163046
ACCESSION NUMBER:		0001493152-26-036362
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		81
CONFORMED PERIOD OF REPORT:	20260630
FILED AS OF DATE:		20260806
DATE AS OF CHANGE:		20260806

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Tecnoglass Holdings Inc.
		CENTRAL INDEX KEY:			0001534675
		STANDARD INDUSTRIAL CLASSIFICATION:	FLAT GLASS [3211]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				000000000
		STATE OF INCORPORATION:			E9
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-35436
		FILM NUMBER:		261249706

	BUSINESS ADDRESS:	
		STREET 1:		3550 NW 49TH STREET,
		CITY:			MIAMI
		STATE:			FL
		ZIP:			33142
		BUSINESS PHONE:		1(305)638-5151

	MAIL ADDRESS:	
		STREET 1:		3550 NW 49TH STREET,
		CITY:			MIAMI
		STATE:			FL
		ZIP:			33142

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	Tecnoglass Inc.
		DATE OF NAME CHANGE:	20131230

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	Andina Acquisition Corp
		DATE OF NAME CHANGE:	20111110
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>form10-q.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2026" xmlns:us-gaap="http://fasb.org/us-gaap/2026" xmlns:us-roles="http://fasb.org/us-roles/2026" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:ecd="http://xbrl.sec.gov/ecd/2026" xmlns:country="http://xbrl.sec.gov/country/2026" xmlns:srt="http://fasb.org/srt/2026" xmlns:TGLS="http://tecnoglass.com/20260630">
<head>
     <title></title>
<meta http-equiv="Content-Type" content="text/html"/>
</head>
<!-- Field: Set; Name: xdx; ID: xdx_023_US%2DGAAP%2D2026%2D(with%2DECD) -->
<!-- Field: Set; Name: xdx; ID: xdx_033_TGLS_tecnoglass.com_20260630 -->
<!-- Field: Set; Name: xdx; ID: xdx_043_20260101_20260630 -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DAmendmentFlag_false -->
<!-- Field: Set; Name: xdx; ID: xdx_051_edei%2D%2DCurrentFiscalYearEndDate_%2D%2DLS0xMi0zMQ== -->
<!-- Field: Set; Name: xdx; ID: xdx_058_edei%2D%2DDocumentFiscalPeriodFocus_Q2 -->
<!-- Field: Set; Name: xdx; ID: xdx_05E_edei%2D%2DEntityCentralIndexKey_0001534675 -->
<!-- Field: Set; Name: xdx; ID: xdx_070_XDX_form10%2Dq.xdx -->
<!-- Field: Set; Name: xdx; ID: xdx_072_SO_form10%2Dq.xdxs -->
<!-- Field: Set; Name: xdx; ID: xdx_06B_USD_1_iso4217%2D%2DUSD -->
<!-- Field: Set; Name: xdx; ID: xdx_062_Shares_2_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_06D_USDPShares_3_iso4217%2D%2DUSD_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_069_Pure_4_xbrli%2D%2Dpure -->
<!-- Field: Set; Name: xdx; ID: xdx_06B_Segment_0_Segment -->
<!-- Field: Set; Name: xdx; ID: xdx_064_Integer_5_Integer -->
<body style="font: 10pt Times New Roman, Times, Serif">
<div style="display: none">
<ix:header>
 <ix:hidden>
  <ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000003" name="dei:AmendmentFlag">false</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000004" name="dei:CurrentFiscalYearEndDate">--12-31</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000005" name="dei:DocumentFiscalPeriodFocus">Q2</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000006" name="dei:EntityCentralIndexKey">0001534675</ix:nonNumeric>
  <ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="AsOf2026-06-30" id="xdx2ixbrl0155" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="AsOf2025-12-31" id="xdx2ixbrl0156" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherOperatingIncomeLoss" contextRef="From2026-04-012026-06-30" id="xdx2ixbrl0264" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherOperatingIncomeLoss" contextRef="From2026-01-01to2026-06-30" id="xdx2ixbrl0266" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:RealizedGainOnDerivativeInstruments" contextRef="From2025-01-012025-06-30" id="xdx2ixbrl0382" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2026-01-01to2026-06-30" id="xdx2ixbrl0432" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" contextRef="From2026-01-01to2026-06-30" id="xdx2ixbrl0438" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:AccountPayableForBusinessAcquisition" contextRef="From2026-01-01to2026-06-30" id="xdx2ixbrl0495" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0510" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0511" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0512" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-01-012026-03-31_custom_LegalReservesMember" id="xdx2ixbrl0513" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0515" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0520" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0522" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-03-31_custom_LegalReservesMember" id="xdx2ixbrl0523" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0524" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0525" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0530" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0531" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0532" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" contextRef="From2026-01-012026-03-31_custom_LegalReservesMember" id="xdx2ixbrl0533" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0534" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0538" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0539" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0540" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-01-012026-03-31_custom_LegalReservesMember" id="xdx2ixbrl0541" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0542" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0546" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0547" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0548" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-01-012026-03-31_custom_LegalReservesMember" id="xdx2ixbrl0549" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0551" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0566" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0567" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0568" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-04-012026-06-30_custom_LegalReservesMember" id="xdx2ixbrl0569" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0571" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0576" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0577" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2026-04-012026-06-30_custom_LegalReservesMember" id="xdx2ixbrl0579" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0580" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0581" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0586" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0587" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0588" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" contextRef="From2026-04-012026-06-30_custom_LegalReservesMember" id="xdx2ixbrl0589" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0590" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0594" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0595" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0596" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30_custom_LegalReservesMember" id="xdx2ixbrl0597" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0598" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0602" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember" id="xdx2ixbrl0603" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0604" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-04-012026-06-30_custom_LegalReservesMember" id="xdx2ixbrl0605" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0607" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0631" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0632" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-01-012025-03-31_custom_LegalReservesMember" id="xdx2ixbrl0633" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0635" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0640" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-01-012025-03-31_custom_LegalReservesMember" id="xdx2ixbrl0642" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0643" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0644" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0649" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0650" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-01-012025-03-31_custom_LegalReservesMember" id="xdx2ixbrl0651" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0652" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0656" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0657" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-01-012025-03-31_custom_LegalReservesMember" id="xdx2ixbrl0658" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0659" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember" id="xdx2ixbrl0663" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0664" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-01-012025-03-31_custom_LegalReservesMember" id="xdx2ixbrl0665" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0667" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0688" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0689" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-04-012025-06-30_custom_LegalReservesMember" id="xdx2ixbrl0690" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0692" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0697" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-04-012025-06-30_custom_LegalReservesMember" id="xdx2ixbrl0699" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0700" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0701" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0706" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0707" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-04-012025-06-30_custom_LegalReservesMember" id="xdx2ixbrl0708" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0709" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0713" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0714" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-04-012025-06-30_custom_LegalReservesMember" id="xdx2ixbrl0715" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0716" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember" id="xdx2ixbrl0720" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0721" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-04-012025-06-30_custom_LegalReservesMember" id="xdx2ixbrl0722" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0724" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StandardProductWarrantyAccrual" contextRef="AsOf2024-12-31" id="xdx2ixbrl0762" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="xdx2ixbrl0795" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0796" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2026-06-30" id="xdx2ixbrl0797" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0800" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0804" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0808" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0812" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0816" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0820" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0828" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0832" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="xdx2ixbrl0844" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherLongTermDebtCurrent" contextRef="AsOf2025-12-31" id="xdx2ixbrl1150" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:DerivativeFinancialInstrumentGain" contextRef="From2025-04-012025-06-30" id="xdx2ixbrl1210" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:DerivativeFinancialInstrumentGain" contextRef="From2025-01-012025-06-30" id="xdx2ixbrl1212" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DerivativeInstrumentsAndHedgesLiabilities" contextRef="AsOf2026-06-30_custom_InterestRateSwapContractsMember_us-gaap_AccruedLiabilitiesMember" id="xdx2ixbrl1309" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DerivativeInstrumentsAndHedgesLiabilities" contextRef="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_us-gaap_AccruedLiabilitiesMember" id="xdx2ixbrl1313" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DerivativeInstrumentsAndHedgesLiabilities" contextRef="AsOf2026-06-30" id="xdx2ixbrl1317" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2026-04-012026-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember" id="xdx2ixbrl1329" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2026-04-012026-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember" id="xdx2ixbrl1337" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30_country_PA" id="xdx2ixbrl1363" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-01-012026-06-30_country_PA" id="xdx2ixbrl1365" unitRef="USD" xs:nil="true"></ix:nonFraction>
  </ix:hidden>
 <ix:references>
  <link:schemaRef xlink:href="tgls-20260630.xsd" xlink:type="simple"/>
  </ix:references>
 <ix:resources>
    <xbrli:context id="From2026-01-01to2026-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-08-03">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-08-03</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_NonrelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_NonrelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_ExternalCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_ExternalCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_ExternalCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_ExternalCustomersMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2024-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2024-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_TreasuryStockCommonMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-31_us-gaap_TreasuryStockCommonMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-31_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2024-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2024-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2024-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2024-12-31_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2024-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2024-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2024-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2024-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-03-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-03-31_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-03-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-03-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-03-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-03-31_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-03-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-03-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-03-31_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-03-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-03-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_TreasuryStockCommonMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-06-30_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-06-30_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-06-30_custom_LegalReservesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-06-30_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-032025-04-03_custom_ContiglassAssetAcquisitionLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">TGLS:ContiglassAssetAcquisitionLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-03</xbrli:startDate>
        <xbrli:endDate>2025-04-03</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-04-03_custom_ContiglassAssetAcquisitionLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">TGLS:ContiglassAssetAcquisitionLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-04-03</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodReclassificationAdjustmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:ReportableSegmentAggregationBeforeOtherOperatingSegmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_ContractAssetsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">TGLS:ContractAssetsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_ContractLiabilitiesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">TGLS:ContractLiabilitiesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_FixedPriceContractsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_FixedPriceContractsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_FixedPriceContractsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_FixedPriceContractsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_ProductSalesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_ProductSalesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_ProductSalesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_ProductSalesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_country_CO">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_country_CO">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_country_CO">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_country_CO">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_OtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_OtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_OtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_OtherMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_ResidentialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_ResidentialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_ResidentialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_ResidentialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_CommercialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_CommercialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_CommercialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_CommercialMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-12-31_srt_ScenarioForecastMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2027-12-31_srt_ScenarioForecastMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2027-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2028-12-31_srt_ScenarioForecastMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2028-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_TradeNamesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_SoftwareAndLicensesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:SoftwareAndLicensesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_ContractBacklogMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:ContractBacklogMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_us-gaap_TradeNamesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_SoftwareAndLicensesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:SoftwareAndLicensesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_ContractBacklogMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:ContractBacklogMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_SupplierFinanceProgramMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">TGLS:SupplierFinanceProgramMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_SupplierFinanceProgramMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">TGLS:SupplierFinanceProgramMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-09-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-09-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-09-012025-09-30_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-09-01</xbrli:startDate>
        <xbrli:endDate>2025-09-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-09-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2024-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2024-09-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2023-06-21</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2023-06-21</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-09-03_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-09-03</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-09-04_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-09-04</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-09-04</xbrli:startDate>
        <xbrli:endDate>2025-09-04</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-09-04</xbrli:startDate>
        <xbrli:endDate>2025-09-04</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2024-09-042024-09-04_custom_SeniorSecuredCreditFacilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2024-09-04</xbrli:startDate>
        <xbrli:endDate>2024-09-04</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_us-gaap_InterestRateSwapMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_us-gaap_InterestRateSwapMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:ForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_InterestRateSwapContractsMember_custom_OtherCurrentAssetMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">TGLS:OtherCurrentAssetMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_InterestRateSwapContractsMember_us-gaap_AccruedLiabilitiesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_custom_OtherCurrentAssetMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:ForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">TGLS:OtherCurrentAssetMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_us-gaap_AccruedLiabilitiesMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:ForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestExpenseNetOfDeferredCostOfFinancingMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestExpenseNetOfDeferredCostOfFinancingMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestExpenseNetOfDeferredCostOfFinancingMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_country_PA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_country_PA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_country_PA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_country_PA">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_OtherMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:OtherMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_OtherMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:OtherMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_FundacionTecnoglassMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_FundacionTecnoglassMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_FundacionTecnoglassMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_FundacionTecnoglassMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-06-30_custom_StormArmourSolutionsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">TGLS:StormArmourSolutionsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_StormArmourSolutionsLLCMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StormArmourSolutionsLLCMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2019-05-03_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2019-05-03</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-12-082020-12-09_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-12-08</xbrli:startDate>
        <xbrli:endDate>2020-12-09</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-09_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-09</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2020-10-282020-10-28_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2020-10-28</xbrli:startDate>
        <xbrli:endDate>2020-10-28</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-28_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-28</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-10-27_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-10-27</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-04-012026-06-30_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-04-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-04-012025-06-30_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-04-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2025-01-012025-06-30_custom_VidrioAndinoMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-01-01</xbrli:startDate>
        <xbrli:endDate>2025-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862468">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862484">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-06-30_custom_ZofracostaSAMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:ZofracostaSAMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2025-12-31_custom_ZofracostaSAMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:ZofracostaSAMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2025-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-18_custom_QuarterlyRateMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">TGLS:QuarterlyRateMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-18</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2026-03-18_custom_AnnualBasisMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">TGLS:AnnualBasisMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2026-03-18</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_us-gaap_TreasuryStockCommonMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_srt_MinimumMember_custom_FebruaryTwentyEightThousandThirtyThreeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">TGLS:FebruaryTwentyEightThousandThirtyThreeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2026-01-012026-06-30_srt_MinimumMember_custom_ThroughTwoThousandTwentyEightMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001534675</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">TGLS:ThroughTwoThousandTwentyEightMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2026-01-01</xbrli:startDate>
        <xbrli:endDate>2026-06-30</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:unit id="USD">
      <xbrli:measure>iso4217:USD</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Shares">
      <xbrli:measure>xbrli:shares</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="USDPShares">
      <xbrli:divide>
        <xbrli:unitNumerator>
          <xbrli:measure>iso4217:USD</xbrli:measure>
        </xbrli:unitNumerator>
        <xbrli:unitDenominator>
          <xbrli:measure>xbrli:shares</xbrli:measure>
        </xbrli:unitDenominator>
      </xbrli:divide>
    </xbrli:unit>
    <xbrli:unit id="Pure">
      <xbrli:measure>xbrli:pure</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Segment">
      <xbrli:measure>TGLS:Segment</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Integer">
      <xbrli:measure>TGLS:Integer</xbrli:measure>
    </xbrli:unit>
  </ix:resources>
 </ix:header>
</div>


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

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

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

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b>FORM
<span id="xdx_904_edei--DocumentType_c20260101__20260630_zyepVTuYB635"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000015" name="dei:DocumentType">10-Q</ix:nonNumeric></span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(MARK
ONE)</b></span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_908_edei--DocumentQuarterlyReport_c20260101__20260630_zobaBOA1y5jd"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt:booleantrue" id="Fact000016" name="dei:DocumentQuarterlyReport">&#9746;</ix:nonNumeric></span></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>QUARTERLY
    REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For
the quarterly period ended <span id="xdx_90E_edei--DocumentPeriodEndDate_c20260101__20260630_zIPAZ9fKWSB4"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt:datemonthdayyearen" id="Fact000017" name="dei:DocumentPeriodEndDate">June 30, <span id="xdx_90F_edei--DocumentFiscalYearFocus_c20260101__20260630_zSdCVlvWJjx6"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000018" name="dei:DocumentFiscalYearFocus">2026</ix:nonNumeric></span></ix:nonNumeric></span></b></span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_90F_edei--DocumentTransitionReport_c20260101__20260630_zwEAEXY8fI7l"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt:booleanfalse" id="Fact000019" name="dei:DocumentTransitionReport">&#9744;</ix:nonNumeric></span></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>TRANSITION
    REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</b></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>For
the transition period from to</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Commission
file number: <span style="text-decoration: underline"><span id="xdx_90A_edei--EntityFileNumber_c20260101__20260630_zH3z4Hw6805c"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000020" name="dei:EntityFileNumber">001-35436</ix:nonNumeric></span></span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b><span id="xdx_906_edei--EntityRegistrantName_c20260101__20260630_zaOrt3WI2a94"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000021" name="dei:EntityRegistrantName">TECNOGLASS
HOLDINGS INC.</ix:nonNumeric></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Exact
Name of Registrant as Specified in Its Charter)</span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 49%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_905_edei--EntityIncorporationStateCountryCode_c20260101__20260630_zNdZYrTAY6tl"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt-sec:stateprovnameen" id="Fact000022" name="dei:EntityIncorporationStateCountryCode">Florida</ix:nonNumeric></span></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 49%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_909_edei--EntityTaxIdentificationNumber_c20260101__20260630_zpLcdY9IqSe6"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000023" name="dei:EntityTaxIdentificationNumber">98-1271120</ix:nonNumeric></span></b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(State
                                            or other jurisdiction</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">of
    incorporation or organization)</span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(I.R.S.
                                            Employer</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Identification
    No.)</span></p></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_903_edei--EntityAddressAddressLine1_c20260101__20260630_z7mu05Kb3I3e"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000024" name="dei:EntityAddressAddressLine1">3550
NW 49th Street</ix:nonNumeric></span>, <span><span id="xdx_901_edei--EntityAddressCityOrTown_c20260101__20260630_zeOWASLs9aN8"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000025" name="dei:EntityAddressCityOrTown">Miami</ix:nonNumeric></span></span>, <span><span id="xdx_90D_edei--EntityAddressStateOrProvince_c20260101__20260630_zuOPjmZLysP5"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt-sec:stateprovnameen" id="Fact000026" name="dei:EntityAddressStateOrProvince">Florida</ix:nonNumeric></span> <span id="xdx_90B_edei--EntityAddressPostalZipCode_c20260101__20260630_z2i3Rm32U0s3"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000027" name="dei:EntityAddressPostalZipCode">33142</ix:nonNumeric></span></span>, <span><span id="xdx_908_edei--EntityAddressCountry_c20260101__20260630_zLgebgGISTWa"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt-sec:countrynameen" id="Fact000028" name="dei:EntityAddressCountry">USA</ix:nonNumeric></span></span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span>Avenida
Circunvalar a 100 mts de la Via 40</span>, <span>Barrio Las Flores Barranquilla</span>, <span>Colombia</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Address
of principal executive offices)</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span><span id="xdx_901_edei--CountryRegion_c20260101__20260630_zCtm1iynyIJd"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000029" name="dei:CountryRegion">+1</ix:nonNumeric></span>
<span id="xdx_900_edei--CityAreaCode_c20260101__20260630_zIDXZtcUZ2U9"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000030" name="dei:CityAreaCode">305</ix:nonNumeric></span> <span id="xdx_90E_edei--LocalPhoneNumber_c20260101__20260630_zxPsegzLQYz5"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000031" name="dei:LocalPhoneNumber">638 5151</ix:nonNumeric></span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Issuer&#8217;s
telephone number)</span></p>

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

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

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: Black 1pt solid; font: 10pt Times New Roman, Times, Serif; width: 38%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Title
    of each class</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1pt; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: Black 1pt solid; font: 10pt Times New Roman, Times, Serif; width: 20%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trading
    Symbol(s)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1pt; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: Black 1pt solid; font: 10pt Times New Roman, Times, Serif; width: 38%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name
    of each exchange on which registered</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_905_edei--Security12bTitle_c20260101__20260630_zzxWo0e1PHa"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000032" name="dei:Security12bTitle">Ordinary
    Shares</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90D_edei--TradingSymbol_c20260101__20260630_zwYvhzv57Rp8"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000033" name="dei:TradingSymbol">TGLS</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_edei--SecurityExchangeName_c20260101__20260630_zinbXx5XZNA9"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt-sec:exchnameen" id="Fact000034" name="dei:SecurityExchangeName">The
    New York Stock Exchange</ix:nonNumeric></span></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the 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 requirement for the past 90 days.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_902_edei--EntityCurrentReportingStatus_c20260101__20260630_z2nuOChUpRVh"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000035" name="dei:EntityCurrentReportingStatus">Yes</ix:nonNumeric></span>
&#9746; No &#9744;</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule
405 of Regulation S-T (&#167; 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant
was required to submit such files).</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_908_edei--EntityInteractiveDataCurrent_c20260101__20260630_z4DkfgYVvmyh"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000036" name="dei:EntityInteractiveDataCurrent">Yes</ix:nonNumeric></span>
&#9746; No &#9744;</span></p>

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

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

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_edei--EntityFilerCategory_c20260101__20260630_zMWG70hTmoU4"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt-sec:entityfilercategoryen" id="Fact000037" name="dei:EntityFilerCategory">Large
    accelerated filer</ix:nonNumeric></span> &#9746;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accelerated
    filer &#9744;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Non-accelerated
    filer &#9744;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smaller
    reporting company <span id="xdx_90A_edei--EntitySmallBusiness_c20260101__20260630_zozUCuorrKjc"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt:booleanfalse" id="Fact000038" name="dei:EntitySmallBusiness">&#9744;</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Emerging
    growth company <span id="xdx_906_edei--EntityEmergingGrowthCompany_c20260101__20260630_zRsufSLUQHxd"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt:booleanfalse" id="Fact000039" name="dei:EntityEmergingGrowthCompany">&#9744;</ix:nonNumeric></span></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying
with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. &#9744;</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Yes
&#9744; No <span id="xdx_903_edei--EntityShellCompany_dbF_c20260101__20260630_zWyWZ9slBM67"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt:booleanfalse" id="Fact000040" name="dei:EntityShellCompany">&#9746;</ix:nonNumeric></span></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of August 3, 2026, there were <span id="xdx_908_edei--EntityCommonStockSharesOutstanding_iI_c20260803_zYcgEaGQza98"><ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" contextRef="AsOf2026-08-03" id="Fact000041" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,364,616</ix:nonFraction></span> ordinary shares, $<span id="xdx_909_edei--EntityListingParValuePerShare_c20260101__20260630_zDWG7A2i90Ma"><ix:nonFraction name="dei:EntityListingParValuePerShare" contextRef="From2026-01-01to2026-06-30" id="Fact000042" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.0001</ix:nonFraction></span> par value per share, outstanding.</span></p>

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

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

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

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

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>FORM
10-Q FOR THE PERIOD ENDED JUNE 30, 2026</b></span></p>

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

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

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 0.5in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Page</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#a_001">Part I. Financial Information</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#a_002">Item 1. Financial Statements (Unaudited)</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#a_003">Condensed Consolidated Balance Sheets</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#a_004">Condensed Consolidated Statements of Operations and Other Comprehensive Income</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">4</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#a_005">Condensed Consolidated Statements of Cash Flows</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#a_006">Condensed Consolidated Statements of Shareholders&#8217; Equity</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">6</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#a_007">Notes to Condensed Consolidated Financial Statements</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">7</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_001">Item 2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">19</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_002">Item 3. Quantitative and Qualitative Disclosures about Market Risk</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">22</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_003">Item 4. Controls and Procedures</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">23</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_004">Part II. Other Information</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_005">Item 1. Legal Proceedings</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">24</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_006">Item 2. Unregistered Sales of Equity Securities and Use of Proceeds</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">24</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_007">Item 5. Other Information</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">25</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_008">Item 6. Exhibits</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">25</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#pp_009">Signatures</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">26</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="a_001"></span>PART
I - FINANCIAL INFORMATION</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="a_002"></span>Item
1. Financial Statements </b>(Unaudited).</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Tecnoglass
Holdings Inc. and Subsidiaries</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(In
thousands, except share and per share data)</b></span></p>

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

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

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

<table cellpadding="0" cellspacing="0" id="xdx_30C_111_pn3n3_zsN95DnoFMZj" summary="xdx: Statement - Condensed Consolidated Balance Sheets (Unaudited)" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_490_20260630_zKC6j7cY0LAl" style="text-align: center; font-weight: bold">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49E_20251231_za1wLgbKsSw7" style="text-align: center; font-weight: bold">December 31,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--AssetsAbstract_iB_zjtzokld8zRa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; font-weight: bold">ASSETS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--AssetsCurrentAbstract_i01B_zXzdWteCbbU" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Current assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--CashAndCashEquivalentsAtCarryingValue_i02I_maACz8C3_zaGogYeUNj4b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Cash and cash equivalents</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2026-06-30" id="Fact000050" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">80,814</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2025-12-31" id="Fact000051" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">100,901</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--ShortTermInvestments_i02I_maACz8C3_zAsspuMFjdB7" style="vertical-align: bottom; background-color: White">
    <td>Investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ShortTermInvestments" contextRef="AsOf2026-06-30" id="Fact000053" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,466</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ShortTermInvestments" contextRef="AsOf2025-12-31" id="Fact000054" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,150</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--AccountsReceivableNetCurrent_i02I_maACz8C3_zfgm1A2rtAid" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Trade accounts receivable, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2026-06-30" id="Fact000056" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">287,466</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2025-12-31" id="Fact000057" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">239,448</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--OtherReceivablesNetCurrent_i02I_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_maACz8C3_zcXo3BDB692f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Due from related parties</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember" id="Fact000059" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,075</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember" id="Fact000060" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,002</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--InventoryNet_i02I_maACz8C3_zdlZDgOHGmq4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Inventories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2026-06-30" id="Fact000062" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">271,595</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2025-12-31" id="Fact000063" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">213,524</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ContractWithCustomerAssetNetCurrent_i02I_maACz8C3_zK9O9AD2F6H6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract assets &#8211; current portion</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="AsOf2026-06-30" id="Fact000065" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">29,701</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="AsOf2025-12-31" id="Fact000066" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">31,809</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherAssetsCurrent_i02I_maACz8C3_zEkmfZh8Yc51" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; text-align: left">Other current assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" contextRef="AsOf2026-06-30" id="Fact000068" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">55,082</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" contextRef="AsOf2025-12-31" id="Fact000069" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">62,724</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AssetsCurrent_i02TI_maCznLt_mtACz8C3_zM52VyGDytpj" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Total current assets</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="AsOf2026-06-30" id="Fact000071" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">730,199</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="AsOf2025-12-31" id="Fact000072" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">653,558</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--AssetsNoncurrentAbstract_i01B_zkond5Lj0Dll" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Long-term assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--PropertyPlantAndEquipmentNet_i02I_maANzD1T_zkJ3u2i8sYn7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Property, plant and equipment, net</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2026-06-30" id="Fact000077" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">562,122</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2025-12-31" id="Fact000078" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">476,159</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--AccountsReceivableNetNoncurrent_i02I_maANzD1T_zJnx4jbrG092" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Long term accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetNoncurrent" contextRef="AsOf2026-06-30" id="Fact000080" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,887</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetNoncurrent" contextRef="AsOf2025-12-31" id="Fact000081" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,730</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredIncomeTaxAssetsNet_i02I_maANzD1T_zkFo2ur10SX5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Deferred income taxes</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="AsOf2026-06-30" id="Fact000083" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">329</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="AsOf2025-12-31" id="Fact000084" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,257</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--ContractWithCustomerAssetNetNoncurrent_i02I_maANzD1T_zSS5wfukblUd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Contract assets &#8211; non-current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" contextRef="AsOf2026-06-30" id="Fact000086" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">28,414</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" contextRef="AsOf2025-12-31" id="Fact000087" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">20,506</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--IntangibleAssetsNetExcludingGoodwill_i02I_maANzD1T_zcFja6OfYpT2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Intangible assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2026-06-30" id="Fact000089" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,808</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2025-12-31" id="Fact000090" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">12,959</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--Goodwill_i02I_maANzD1T_zVD59xKFufib" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Goodwill</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2026-06-30" id="Fact000092" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">30,059</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2025-12-31" id="Fact000093" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">30,059</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--LongTermInvestments_i02I_maANzD1T_zmmDkB8J1Syf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermInvestments" contextRef="AsOf2026-06-30" id="Fact000095" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">55,656</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermInvestments" contextRef="AsOf2025-12-31" id="Fact000096" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">57,443</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--OtherAssetsNoncurrent_i02I_maANzD1T_zyfG5RyRLETk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; text-align: left">Other long-term assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" contextRef="AsOf2026-06-30" id="Fact000098" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,417</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" contextRef="AsOf2025-12-31" id="Fact000099" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,721</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--AssetsNoncurrent_i02TI_maCznLt_mtANzD1T_zh1TdHf3DcMc" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">Total long-term assets</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:AssetsNoncurrent" contextRef="AsOf2026-06-30" id="Fact000101" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">699,692</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:AssetsNoncurrent" contextRef="AsOf2025-12-31" id="Fact000102" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">606,834</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--Assets_i01TI_mtCznLt_zlmcNkYj0whl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">Total assets</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Assets" contextRef="AsOf2026-06-30" id="Fact000104" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,429,891</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Assets" contextRef="AsOf2025-12-31" id="Fact000105" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,260,392</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LiabilitiesAndStockholdersEquityAbstract_iB_zfWi3p1hxlbk" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: center">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LiabilitiesCurrentAbstract_i01B_zLmVTRxMFKa4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Current liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DebtCurrent_i02I_maLCzCS5_zAhBSi1Jpwq9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Short-term debt and current portion of long-term debt</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DebtCurrent" contextRef="AsOf2026-06-30" id="Fact000113" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,156</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DebtCurrent" contextRef="AsOf2025-12-31" id="Fact000114" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">427</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--AccountsPayableAndAccruedLiabilitiesCurrent_i02I_maLCzCS5_zXRwrCviCOzl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Trade accounts payable and accrued expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" contextRef="AsOf2026-06-30" id="Fact000116" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">178,854</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" contextRef="AsOf2025-12-31" id="Fact000117" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">127,228</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--OtherLiabilitiesCurrent_i02I_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_maLCzCS5_zR30Iy24pt69" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Due to related parties</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember" id="Fact000119" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,895</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember" id="Fact000120" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,881</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DividendsPayableCurrent_i02I_maLCzCS5_z77ezqhmZhn4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Dividends payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DividendsPayableCurrent" contextRef="AsOf2026-06-30" id="Fact000122" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,675</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DividendsPayableCurrent" contextRef="AsOf2025-12-31" id="Fact000123" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,730</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--ContractWithCustomerLiabilityCurrent_i02I_maLCzCS5_zqFsVQ7q6c4l" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract liability &#8211; current portion</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2026-06-30" id="Fact000125" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">173,825</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2025-12-31" id="Fact000126" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">149,442</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--OtherLiabilitiesCurrent_i02I_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--NonrelatedPartyMember_maLCzCS5_zln73GedIlje" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; text-align: left">Other current liabilities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2026-06-30_us-gaap_NonrelatedPartyMember" id="Fact000128" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">18,250</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2025-12-31_us-gaap_NonrelatedPartyMember" id="Fact000129" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">57,038</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LiabilitiesCurrent_i02TI_maCzaEB_mtLCzCS5_zop1jdWpLaP9" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Total current liabilities</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="AsOf2026-06-30" id="Fact000131" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">392,655</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="AsOf2025-12-31" id="Fact000132" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">351,746</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LiabilitiesNoncurrentAbstract_i01B_zYERKISvO776" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Long-term liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--DeferredIncomeTaxLiabilitiesNet_i02I_maLNzyf9_zTERNUToT0aa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Deferred income taxes</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="AsOf2026-06-30" id="Fact000137" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">28,181</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="AsOf2025-12-31" id="Fact000138" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">22,404</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--ContractWithCustomerLiabilityNoncurrent_i02I_maLNzyf9_zsNz62OvZ6W8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Contract liability &#8211; non-current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="AsOf2026-06-30" id="Fact000140" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,045</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="AsOf2025-12-31" id="Fact000141" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,988</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebtNoncurrent_i02I_maLNzyf9_zgW91D4MGOgg" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; text-align: left">Long-term debt</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2026-06-30" id="Fact000143" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">219,238</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2025-12-31" id="Fact000144" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">171,202</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LiabilitiesNoncurrent_i02TI_maCzaEB_mtLNzyf9_z2SChLtDVa97" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">Total long-term liabilities</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" contextRef="AsOf2026-06-30" id="Fact000146" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">248,464</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" contextRef="AsOf2025-12-31" id="Fact000147" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">195,594</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--Liabilities_i01TI_mtCzaEB_maLASEzGKt_ziuuHWNHfyKl" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Total liabilities</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="AsOf2026-06-30" id="Fact000149" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">641,119</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="AsOf2025-12-31" id="Fact000150" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">547,340</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--StockholdersEquityAbstract_i01B_zs9hsIhE4Qz6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">SHAREHOLDERS&#8217; EQUITY</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--PreferredStockValue_i02I_maSEIPAzZFB_zxS2eu5Lyue" style="vertical-align: bottom; background-color: White">
    <td>Preferred shares, $<span id="xdx_90A_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_pid_c20260630_zLJXx3Ru9oFh" title="Preferred shares, par value"><span id="xdx_909_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_pid_c20251231_zJE1VUDNW2ll" title="Preferred shares, par value"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2026-06-30" id="Fact000158" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2025-12-31" id="Fact000160" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.0001</ix:nonFraction></ix:nonFraction></span></span> par value, <span id="xdx_90D_eus-gaap--PreferredStockSharesAuthorized_iI_pid_c20260630_zv5KEIHwe4Lg" title="Preferred shares, shares authorized"><span id="xdx_904_eus-gaap--PreferredStockSharesAuthorized_iI_pid_c20251231_zt2cKJCnem55" title="Preferred shares, shares authorized"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2026-06-30" id="Fact000162" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2025-12-31" id="Fact000164" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,000,000</ix:nonFraction></ix:nonFraction></span></span> shares authorized, <span id="xdx_90B_eus-gaap--PreferredStockSharesIssued_iI_pid_c20260630_zjqqrdZsv2ng" title="Preferred shares, shares issued"><span id="xdx_902_eus-gaap--PreferredStockSharesOutstanding_iI_pid_c20260630_znOL3xWCJVm4" title="Preferred shares, shares outstanding"><span id="xdx_90E_eus-gaap--PreferredStockSharesIssued_iI_pid_c20251231_znziE9GGLTi6" title="Preferred shares, shares issued"><span id="xdx_904_eus-gaap--PreferredStockSharesOutstanding_iI_pid_c20251231_zIzu8wliEQub" title="Preferred shares, shares outstanding"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2026-06-30" id="Fact000166" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="AsOf2026-06-30" id="Fact000168" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2025-12-31" id="Fact000170" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="AsOf2025-12-31" id="Fact000172" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">0</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span></span></span></span> shares issued and outstanding at June 30, 2026, and December 31, 2025 respectively</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;&#160;
                                       <span style="-sec-ix-hidden: xdx2ixbrl0155">-</span>&#160;</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="font-size: 10pt; display: none; font-family: Times New Roman, Times, Serif"><span style="-sec-ix-hidden: xdx2ixbrl0156">-</span> <span style="font-size: 10pt">&#160;</span></span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--CommonStockValue_i02I_maSEIPAzZFB_zafPXoEs8nk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Ordinary shares, $<span id="xdx_907_eus-gaap--CommonStockParOrStatedValuePerShare_iI_pid_c20260630_zzfbPEBaEYyi" title="Ordinary shares, par value"><span id="xdx_90B_eus-gaap--CommonStockParOrStatedValuePerShare_iI_pid_c20251231_zWavS0GZ4Yd3" title="Ordinary shares, par value"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2026-06-30" id="Fact000177" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2025-12-31" id="Fact000179" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.0001</ix:nonFraction></ix:nonFraction></span></span> par value, <span id="xdx_906_eus-gaap--CommonStockSharesAuthorized_iI_pid_c20260630_zuVgGh6Ewkb9" title="Ordinary shares, shares authorized"><span id="xdx_90A_eus-gaap--CommonStockSharesAuthorized_iI_pid_c20251231_zLOTSZ5GFW96" title="Ordinary shares, shares authorized"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2026-06-30" id="Fact000181" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2025-12-31" id="Fact000183" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">100,000,000</ix:nonFraction></ix:nonFraction></span></span> shares authorized, <span id="xdx_909_eus-gaap--CommonStockSharesIssued_iI_pid_c20260630_zFiuh6IoUeX8" title="Ordinary shares, shares issued"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="AsOf2026-06-30" id="Fact000185" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,389,046</ix:nonFraction></span> shares issued, and <span id="xdx_906_eus-gaap--CommonStockSharesOutstanding_iI_pid_c20260630_zTFVm184BIde" title="Ordinary shares, shares outstanding"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2026-06-30" id="Fact000187" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,364,716</ix:nonFraction></span> shares outstanding at June 30, 2026; and, <span id="xdx_903_eus-gaap--CommonStockSharesIssued_iI_pid_c20251231_z5nMk0Wqkwe6" title="Ordinary shares, shares issued"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="AsOf2025-12-31" id="Fact000189" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,389,146</ix:nonFraction></span> shares issued, and <span id="xdx_90A_eus-gaap--CommonStockSharesOutstanding_iI_pid_c20251231_zdoJrLbPLMmb" title="Ordinary shares, shares outstanding"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2025-12-31" id="Fact000191" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,737,726</ix:nonFraction></span> shares outstanding at December 31, 2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2026-06-30" id="Fact000174" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2025-12-31" id="Fact000175" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--TreasuryStockValue_i02NI_di_msSEIPAzZFB_zanKCay5jRh8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Treasury stock</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="AsOf2026-06-30" id="Fact000193" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">95,679</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="AsOf2025-12-31" id="Fact000194" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">79,218</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_ecustom--LegalReserves_i02I_maSEIPAzZFB_zTMlYEIWXry1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Legal Reserves</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:LegalReserves" contextRef="AsOf2026-06-30" id="Fact000196" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:LegalReserves" contextRef="AsOf2025-12-31" id="Fact000197" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AdditionalPaidInCapital_i02I_maSEIPAzZFB_z9GvZ7NDgT85" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Additional paid-in capital</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="AsOf2026-06-30" id="Fact000199" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">153,353</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="AsOf2025-12-31" id="Fact000200" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">153,358</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--RetainedEarningsAccumulatedDeficit_i02I_maSEIPAzZFB_zn78ONrJEIbb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Retained earnings</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2026-06-30" id="Fact000202" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">713,697</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2025-12-31" id="Fact000203" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">670,558</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--AccumulatedOtherComprehensiveIncomeLossNetOfTax_i02I_maSEIPAzZFB_zHUyvsk4tyjc" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; text-align: left">Accumulated other comprehensive (loss)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="AsOf2026-06-30" id="Fact000205" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">15,938</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="AsOf2025-12-31" id="Fact000206" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">33,109</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_408_eus-gaap--StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_i02TI_mtSEIPAzZFB_maLASEzGKt_zOi1RofXUPz5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">Shareholders&#8217; equity attributable to controlling interest</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2026-06-30" id="Fact000208" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">788,772</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" contextRef="AsOf2025-12-31" id="Fact000209" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">713,052</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LiabilitiesAndStockholdersEquity_i01TI_mtLASEzGKt_zdqg5jZVmdc6" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">Total liabilities and shareholders&#8217; equity</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="AsOf2026-06-30" id="Fact000211" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,429,891</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="AsOf2025-12-31" id="Fact000212" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,260,392</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0.5in; text-align: center; text-indent: -0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Tecnoglass
Holdings Inc. and Subsidiaries</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(In
thousands, except share and per share data)</b></span></p>

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

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

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

<table cellpadding="0" cellspacing="0" id="xdx_30A_113_pn3n3_ziN1sZ5xAM4f" summary="xdx: Statement - Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20260401__20260630_z3vecMRLYmm9" style="font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_496_20250401__20250630_zZqpjm3uyxS1" style="font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_490_20260101__20260630_zAEX0mmZhan2" style="font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_493_20250101__20250630_zOIhEpiQGHg6" style="font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--RevenueFromContractWithCustomerAbstract_iB_zBLXuLk7zCI" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Operating revenues:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_i01_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__custom--ExternalCustomersMember_zOHdIJTQONr9" style="vertical-align: bottom; background-color: White">
    <td style="width: 44%; text-align: left">External customers</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_custom_ExternalCustomersMember" id="Fact000219" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">294,571</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_custom_ExternalCustomersMember" id="Fact000220" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">254,145</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_custom_ExternalCustomersMember" id="Fact000221" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">542,962</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_custom_ExternalCustomersMember" id="Fact000222" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">475,417</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_i01_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z6Y0WkRFQBJd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; text-align: left">Related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_us-gaap_RelatedPartyMember" id="Fact000224" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">720</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_us-gaap_RelatedPartyMember" id="Fact000225" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,401</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_us-gaap_RelatedPartyMember" id="Fact000226" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,341</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_us-gaap_RelatedPartyMember" id="Fact000227" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,417</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_i01_maGPzmCy_zIZprC7Vbb74" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Total operating revenues</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30" id="Fact000229" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">295,291</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30" id="Fact000230" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">255,546</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-01to2026-06-30" id="Fact000231" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">544,303</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30" id="Fact000232" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">477,834</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--CostOfGoodsAndServicesSold_iN_di_msGPzmCy_zz3SeWu8owbk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Cost of sales</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2026-04-012026-06-30" id="Fact000234" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">185,257</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2025-04-012025-06-30" id="Fact000235" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">141,211</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2026-01-01to2026-06-30" id="Fact000236" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">338,435</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" contextRef="From2025-01-012025-06-30" id="Fact000237" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">265,974</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--GrossProfit_iT_mtGPzmCy_maOILzLZV_zEH7bcS0u8zf" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Gross profit</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2026-04-012026-06-30" id="Fact000239" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">110,034</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2025-04-012025-06-30" id="Fact000240" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">114,335</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2026-01-01to2026-06-30" id="Fact000241" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">205,868</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2025-01-012025-06-30" id="Fact000242" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">211,860</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--OperatingExpensesAbstract_iB_zyHRpdd9Rxe4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Operating expenses:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--SellingExpense_i01N_di_maCzjQt_zGinKuNNx1O2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Selling expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:SellingExpense" contextRef="From2026-04-012026-06-30" id="Fact000249" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">45,081</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:SellingExpense" contextRef="From2025-04-012025-06-30" id="Fact000250" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">29,730</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:SellingExpense" contextRef="From2026-01-01to2026-06-30" id="Fact000251" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">67,981</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:SellingExpense" contextRef="From2025-01-012025-06-30" id="Fact000252" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">53,347</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--GeneralAndAdministrativeExpense_i01N_di_maCzjQt_zystCfoJzrdi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; text-align: left">General and administrative expense</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="From2026-04-012026-06-30" id="Fact000254" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">28,409</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="From2025-04-012025-06-30" id="Fact000255" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">23,405</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="From2026-01-01to2026-06-30" id="Fact000256" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">56,402</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="From2025-01-012025-06-30" id="Fact000257" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">42,260</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_40D_eus-gaap--OperatingExpenses_i01NT_di_mtCzjQt_msOILzLZV_zuqkrLnsEs9i" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Total operating expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2026-04-012026-06-30" id="Fact000259" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">73,490</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2025-04-012025-06-30" id="Fact000260" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">53,135</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2026-01-01to2026-06-30" id="Fact000261" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">124,383</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2025-01-012025-06-30" id="Fact000262" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">95,607</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_402_ecustom--OtherOperatingIncomeLoss_i01_maOILzLZV_zoj7Opl0uNh8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; text-align: left">Other Operating income</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0264">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="TGLS:OtherOperatingIncomeLoss" contextRef="From2025-04-012025-06-30" id="Fact000265" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0266">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="TGLS:OtherOperatingIncomeLoss" contextRef="From2025-01-012025-06-30" id="Fact000267" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,280</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OperatingIncomeLoss_iT_maILFCOzLQ6_mtOILzLZV_z3bQCad7lpbe" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Operating income</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2026-04-012026-06-30" id="Fact000269" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">36,544</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2025-04-012025-06-30" id="Fact000270" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">61,204</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2026-01-01to2026-06-30" id="Fact000271" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">81,485</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2025-01-012025-06-30" id="Fact000272" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">120,533</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--NonoperatingGainsLosses_maILFCOzLQ6_zotOJvtKM4rf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Non-operating income, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:NonoperatingGainsLosses" contextRef="From2026-04-012026-06-30" id="Fact000274" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">644</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:NonoperatingGainsLosses" contextRef="From2025-04-012025-06-30" id="Fact000275" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">588</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:NonoperatingGainsLosses" contextRef="From2026-01-01to2026-06-30" id="Fact000276" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,500</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:NonoperatingGainsLosses" contextRef="From2025-01-012025-06-30" id="Fact000277" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,604</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--EquityMethodIncome_maILFCOzLQ6_zH8b1tWElCWi" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Equity method (loss) income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:EquityMethodIncome" contextRef="From2026-04-012026-06-30" id="Fact000279" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">231</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:EquityMethodIncome" contextRef="From2025-04-012025-06-30" id="Fact000280" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">942</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:EquityMethodIncome" contextRef="From2026-01-01to2026-06-30" id="Fact000281" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">129</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:EquityMethodIncome" contextRef="From2025-01-012025-06-30" id="Fact000282" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,286</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--ForeignCurrencyTransactionGainLossBeforeTax_maILFCOzLQ6_zqXvQMQ9eCq4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign currency transactions gains</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="From2026-04-012026-06-30" id="Fact000284" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,213</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="From2025-04-012025-06-30" id="Fact000285" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">847</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="From2026-01-01to2026-06-30" id="Fact000286" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,130</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" contextRef="From2025-01-012025-06-30" id="Fact000287" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">338</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_ecustom--InterestExpenseAndDeferredCostOfFinancing_iN_di_msILFCOzLQ6_zwLLvpkYTerb" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; text-align: left">Interest expense, net and deferred cost of financing</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="TGLS:InterestExpenseAndDeferredCostOfFinancing" contextRef="From2026-04-012026-06-30" id="Fact000289" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,520</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="TGLS:InterestExpenseAndDeferredCostOfFinancing" contextRef="From2025-04-012025-06-30" id="Fact000290" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,350</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="TGLS:InterestExpenseAndDeferredCostOfFinancing" contextRef="From2026-01-01to2026-06-30" id="Fact000291" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,543</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="TGLS:InterestExpenseAndDeferredCostOfFinancing" contextRef="From2025-01-012025-06-30" id="Fact000292" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,681</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_405_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_iT_mtILFCOzLQ6_maPLzWTQ_zExhWvAt0wyf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; text-align: left">Income before taxes</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2026-04-012026-06-30" id="Fact000294" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">38,650</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2025-04-012025-06-30" id="Fact000295" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">62,231</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2026-01-01to2026-06-30" id="Fact000296" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">82,443</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2025-01-012025-06-30" id="Fact000297" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">122,080</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--IncomeTaxExpenseBenefit_iN_di_msPLzWTQ_z8UowT5mffS6" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; text-align: left">Income tax provision</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30" id="Fact000299" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">14,095</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30" id="Fact000300" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">18,148</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2026-01-01to2026-06-30" id="Fact000301" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">25,997</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30" id="Fact000302" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">35,808</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--NetIncomeLoss_iT_mtPLzWTQ_maCINOTzHgW_zj3mAlwdnEEc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">Net income</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2026-04-012026-06-30" id="Fact000304" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">24,555</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2025-04-012025-06-30" id="Fact000305" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">44,083</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2026-01-01to2026-06-30" id="Fact000306" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">56,446</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2025-01-012025-06-30" id="Fact000307" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">86,272</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--EarningsPerShareBasic_pid_zBp1epgT43Hh" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Basic income per share</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2026-04-012026-06-30" id="Fact000309" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.55</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2025-04-012025-06-30" id="Fact000310" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.94</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2026-01-01to2026-06-30" id="Fact000311" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.27</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2025-01-012025-06-30" id="Fact000312" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.84</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--EarningsPerShareDiluted_pid_zNqVvoDUAnoc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Diluted income per share</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2026-04-012026-06-30" id="Fact000314" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.55</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2025-04-012025-06-30" id="Fact000315" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.94</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2026-01-01to2026-06-30" id="Fact000316" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.27</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2025-01-012025-06-30" id="Fact000317" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.84</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zlY5BXqofoI9" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Basic weighted average common shares outstanding</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2026-04-012026-06-30" id="Fact000319" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,364,801</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2025-04-012025-06-30" id="Fact000320" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,988,155</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2026-01-01to2026-06-30" id="Fact000321" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,497,265</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2025-01-012025-06-30" id="Fact000322" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,989,650</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zTU6PmKHYXBg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Diluted weighted average common shares outstanding</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2026-04-012026-06-30" id="Fact000324" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,364,801</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2025-04-012025-06-30" id="Fact000325" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,988,155</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2026-01-01to2026-06-30" id="Fact000326" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,497,265</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2025-01-012025-06-30" id="Fact000327" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,989,650</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--ComprehensiveIncomeNetOfTaxAbstract_iB_zvBp3qb6GxWd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Other comprehensive income:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_i01_maOCIzqBr_zPoNIqP6Rj43" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign currency translation adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2026-04-012026-06-30" id="Fact000334" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">35,693</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2025-04-012025-06-30" id="Fact000335" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,260</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2026-01-01to2026-06-30" id="Fact000336" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">48,905</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" contextRef="From2025-01-012025-06-30" id="Fact000337" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">32,836</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_i01_maOCIzqBr_z2IGwlX4rvmd" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; text-align: left">Change in fair value of investments available for sale and derivative contracts</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2026-04-012026-06-30" id="Fact000339" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">50</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-04-012025-06-30" id="Fact000340" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">785</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2026-01-01to2026-06-30" id="Fact000341" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">142</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-01-012025-06-30" id="Fact000342" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">148</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_i01T_mtOCIzqBr_maCINOTzHgW_zz8YobnA1MR1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; text-align: left">Other comprehensive income</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30" id="Fact000344" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">35,643</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="From2025-04-012025-06-30" id="Fact000345" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">14,045</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="From2026-01-01to2026-06-30" id="Fact000346" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">49,047</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="From2025-01-012025-06-30" id="Fact000347" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">32,984</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_i01T_mtCINOTzHgW_zjXYvZjexY17" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">Total Comprehensive income</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" contextRef="From2026-04-012026-06-30" id="Fact000349" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">60,198</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" contextRef="From2025-04-012025-06-30" id="Fact000350" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">58,128</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" contextRef="From2026-01-01to2026-06-30" id="Fact000351" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">105,493</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" contextRef="From2025-01-012025-06-30" id="Fact000352" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">119,256</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>


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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Tecnoglass
Holdings Inc. and Subsidiaries</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(Amounts
in thousands)</b></span></p>

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

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

<table cellpadding="0" cellspacing="0" id="xdx_308_112_pn3n3_ze3ns6KHcBo7" summary="xdx: Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_490_20260101__20260630_zq0MAs5YLUnl" style="font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20250101__20250630_zmhqN98LIY0b" style="font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--NetCashProvidedByUsedInOperatingActivitiesAbstract_iB_zTbfPru6Aev8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">CASH FLOWS FROM OPERATING ACTIVITIES</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--NetIncomeLoss_i01_maNCPBUz7RY_zL15UOjPJ7O1" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left">Net income</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2026-01-01to2026-06-30" id="Fact000357" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">56,446</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2025-01-012025-06-30" id="Fact000358" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">86,272</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_i01B_zqfSTgtGzj19" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Adjustments to reconcile net income to net cash provided by operating activities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--ProvisionForDoubtfulAccounts_i02_maNCPBUz7RY_zklVKTtozNUa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Allowance for credit losses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2026-01-01to2026-06-30" id="Fact000363" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,322</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2025-01-012025-06-30" id="Fact000364" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">987</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DepreciationAndAmortization_i02_maNCPBUz7RY_zC0d8a2ivngg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Depreciation and amortization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="From2026-01-01to2026-06-30" id="Fact000366" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">21,367</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="From2025-01-012025-06-30" id="Fact000367" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">16,479</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredIncomeTaxesAndTaxCredits_i02_maNCPBUz7RY_zyXRP1nGiGjg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Deferred income taxes</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxesAndTaxCredits" contextRef="From2026-01-01to2026-06-30" id="Fact000369" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,009</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxesAndTaxCredits" contextRef="From2025-01-012025-06-30" id="Fact000370" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,002</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--IncomeLossFromEquityMethodInvestments_i02N_di_msNCPBUz7RY_zvkbu6XZB37i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Equity method income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromEquityMethodInvestments" contextRef="From2026-01-01to2026-06-30" id="Fact000372" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">129</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncomeLossFromEquityMethodInvestments" contextRef="From2025-01-012025-06-30" id="Fact000373" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,286</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_eus-gaap--GainLossOnDispositionOfAssets1_i02N_di_msNCPBUz7RY_zUpzdYTfrhYk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gain on disposal of assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" contextRef="From2026-01-01to2026-06-30" id="Fact000375" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">487</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" contextRef="From2025-01-012025-06-30" id="Fact000376" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,254</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40A_ecustom--DeferredCostOfFinancing_i02_maNCPBUz7RY_zWKqYa0RCNkc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred cost of financing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:DeferredCostOfFinancing" contextRef="From2026-01-01to2026-06-30" id="Fact000378" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">307</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:DeferredCostOfFinancing" contextRef="From2025-01-012025-06-30" id="Fact000379" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">556</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_ecustom--RealizedGainOnDerivativeInstruments_i02_maNCPBUz7RY_zpKbk8jOokg4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Realized gain on derivative instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:RealizedGainOnDerivativeInstruments" contextRef="From2026-01-01to2026-06-30" id="Fact000381" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,181</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0382">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--ForeignCurrencyTransactionGainLossUnrealized_i02N_di_msNCPBUz7RY_zMqLCVZ3dmf8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Unrealized currency translation gains</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossUnrealized" contextRef="From2026-01-01to2026-06-30" id="Fact000384" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">15,956</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossUnrealized" contextRef="From2025-01-012025-06-30" id="Fact000385" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,718</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_400_eus-gaap--OtherNoncashIncomeExpense_i02N_di_msNCPBUz7RY_za1jESvvy22d" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Other non-cash adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherNoncashIncomeExpense" contextRef="From2026-01-01to2026-06-30" id="Fact000387" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">31</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherNoncashIncomeExpense" contextRef="From2025-01-012025-06-30" id="Fact000388" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">391</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--IncreaseDecreaseInOperatingCapitalAbstract_i02B_zvEuAlU8FKOe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Changes in operating assets and liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--IncreaseDecreaseInAccountsReceivable_i03N_di_msNCPBUz7RY_zBU7Yh376y61" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Trade accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="From2026-01-01to2026-06-30" id="Fact000393" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">32,334</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="From2025-01-012025-06-30" id="Fact000394" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">20,376</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40D_eus-gaap--IncreaseDecreaseInInventories_i03N_di_msNCPBUz7RY_zi8f9XyBN212" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Inventories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="From2026-01-01to2026-06-30" id="Fact000396" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">35,818</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="From2025-01-012025-06-30" id="Fact000397" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">23,996</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--IncreaseDecreaseInPrepaidExpense_i03N_di_msNCPBUz7RY_z8OPkSJ4Ryue" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Prepaid expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" contextRef="From2026-01-01to2026-06-30" id="Fact000399" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,691</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" contextRef="From2025-01-012025-06-30" id="Fact000400" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,529</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_402_eus-gaap--IncreaseDecreaseInOtherOperatingAssets_i03N_di_msNCPBUz7RY_zkffJlNoerVa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="From2026-01-01to2026-06-30" id="Fact000402" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">19,953</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="From2025-01-012025-06-30" id="Fact000403" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,248</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_i03_maNCPBUz7RY_z8eou3Ra2GBj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Trade accounts payable and accrued expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="From2026-01-01to2026-06-30" id="Fact000405" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">31,340</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="From2025-01-012025-06-30" id="Fact000406" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">21,802</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--IncreaseDecreaseInAccruedIncomeTaxesPayable_i03_maNCPBUz7RY_zjwnkgxrBN71" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Taxes payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="From2026-01-01to2026-06-30" id="Fact000408" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">39,160</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="From2025-01-012025-06-30" id="Fact000409" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">18,513</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--IncreaseDecreaseInEmployeeRelatedLiabilities_i03_maNCPBUz7RY_zaG8dPSwuqQb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Labor liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" contextRef="From2026-01-01to2026-06-30" id="Fact000411" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">1,810</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" contextRef="From2025-01-012025-06-30" id="Fact000412" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">87</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--IncreaseDecreaseInOtherOperatingLiabilities_i03_maNCPBUz7RY_zn3JRNMlJDOc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingLiabilities" contextRef="From2026-01-01to2026-06-30" id="Fact000414" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">178</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingLiabilities" contextRef="From2025-01-012025-06-30" id="Fact000415" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">15</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--IncreaseDecreaseInCommodityContractAssetsAndLiabilities_i03N_di_msNCPBUz7RY_zlB1scSE7VOg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract assets and liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities" contextRef="From2026-01-01to2026-06-30" id="Fact000417" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">3,668</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities" contextRef="From2025-01-012025-06-30" id="Fact000418" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">21,387</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--IncreaseDecreaseInDueToRelatedParties_i03_maNCPBUz7RY_zLetCZcJIS84" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInDueToRelatedParties" contextRef="From2026-01-01to2026-06-30" id="Fact000420" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">2,533</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInDueToRelatedParties" contextRef="From2025-01-012025-06-30" id="Fact000421" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">1,298</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--NetCashProvidedByUsedInOperatingActivities_i01T_maCCERCz0Iz_mtNCPBUz7RY_zli2cQ8HdA45" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">CASH PROVIDED BY OPERATING ACTIVITIES</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="From2026-01-01to2026-06-30" id="Fact000423" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">11,116</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="From2025-01-012025-06-30" id="Fact000424" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">64,760</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--NetCashProvidedByUsedInInvestingActivitiesAbstract_iB_zWsAyJSEiOr3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">CASH FLOWS FROM INVESTING ACTIVITIES</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital_i01_maNCPBUzKbe_z4qUjxXlinW4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Dividends received</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" contextRef="From2026-01-01to2026-06-30" id="Fact000429" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,257</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" contextRef="From2025-01-012025-06-30" id="Fact000430" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,914</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--PaymentsToAcquireBusinessesNetOfCashAcquired_i01N_di_msNCPBUzKbe_zUG2mUPS3mRb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Business acquisition</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0432">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2025-01-012025-06-30" id="Fact000433" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,841</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--PaymentsToAcquireInvestments_i01N_di_msNCPBUzKbe_zWZapFC6Qnwk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Purchase of investments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireInvestments" contextRef="From2026-01-01to2026-06-30" id="Fact000435" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">600</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireInvestments" contextRef="From2025-01-012025-06-30" id="Fact000436" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">73</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_405_eus-gaap--ProceedsFromSaleOfPropertyPlantAndEquipment_i01_maNCPBUzKbe_zQoqUoxGoiAf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Sale of property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0438">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" contextRef="From2025-01-012025-06-30" id="Fact000439" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">12,312</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_i01N_di_msNCPBUzKbe_zhKuWtg1sfCk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Acquisition of property and equipment</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2026-01-01to2026-06-30" id="Fact000441" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">52,662</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2025-01-012025-06-30" id="Fact000442" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">62,939</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_402_eus-gaap--NetCashProvidedByUsedInInvestingActivities_i01T_maCCERCz0Iz_mtNCPBUzKbe_zXDtBaNCAcu2" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">CASH USED IN INVESTING ACTIVITIES</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="From2026-01-01to2026-06-30" id="Fact000444" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">51,005</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="From2025-01-012025-06-30" id="Fact000445" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">48,627</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--NetCashProvidedByUsedInFinancingActivitiesAbstract_iB_zOC47Ay9O8P5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">CASH FLOWS FROM FINANCING ACTIVITIES</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--PaymentsOfDividends_i01N_di_msNCPBUzQP9_zE4VIfSzsiy" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash dividend</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsOfDividends" contextRef="From2026-01-01to2026-06-30" id="Fact000450" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,364</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsOfDividends" contextRef="From2025-01-012025-06-30" id="Fact000451" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">14,095</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_405_eus-gaap--PaymentsForRepurchaseOfEquity_i01N_di_msNCPBUzQP9_zIPqX2kBcNb4" style="vertical-align: bottom; background-color: White">
    <td>Share repurchases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsForRepurchaseOfEquity" contextRef="From2026-01-01to2026-06-30" id="Fact000453" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">16,466</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsForRepurchaseOfEquity" contextRef="From2025-01-012025-06-30" id="Fact000454" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">339</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--ProceedsFromIssuanceOfDebt_i01_maNCPBUzQP9_zB9FiiyCgxD" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Proceeds from debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfDebt" contextRef="From2026-01-01to2026-06-30" id="Fact000456" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">63,810</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfDebt" contextRef="From2025-01-012025-06-30" id="Fact000457" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,613</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--RepaymentsOfDebt_i01N_di_msNCPBUzQP9_zFudf1Z8rxI3" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">Repayments of debt</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:RepaymentsOfDebt" contextRef="From2026-01-01to2026-06-30" id="Fact000459" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">15,731</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:RepaymentsOfDebt" contextRef="From2025-01-012025-06-30" id="Fact000460" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,103</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_40B_eus-gaap--NetCashProvidedByUsedInFinancingActivities_i01T_maCCERCz0Iz_mtNCPBUzQP9_zELJY6Rp5ZT1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">CASH PROVIDED BY (USED IN) FINANCING ACTIVITIES</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="From2026-01-01to2026-06-30" id="Fact000462" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">18,249</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="From2025-01-012025-06-30" id="Fact000463" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">14,924</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_maCCERCz0Iz_z7Ty816JtEc8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Effect of exchange rate changes on cash and cash equivalents</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="From2026-01-01to2026-06-30" id="Fact000465" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,553</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="From2025-01-012025-06-30" id="Fact000466" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,816</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_iT_mtCCERCz0Iz_zESGy5ElMfQa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">NET (DECREASE) INCREASE IN CASH AND CASH EQUIVALENTS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="From2026-01-01to2026-06-30" id="Fact000468" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">20,087</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="From2025-01-012025-06-30" id="Fact000469" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,025</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iS_zuEB3zz31tVf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">CASH AND CASH EQUIVALENTS - Beginning of period</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2025-12-31" id="Fact000471" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">100,901</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2024-12-31" id="Fact000472" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">134,882</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iE_z7m0xVXEzN2d" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">CASH AND CASH EQUIVALENTS - End of period</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2026-06-30" id="Fact000474" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">80,814</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2025-06-30" id="Fact000475" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">137,907</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--SupplementalCashFlowInformationAbstract_iB_zBWdu5355ted" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--CashPaidDuringPeriodForInterestAndTaxesAbstract_i01B_zSVf1KvA3J3l" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Cash paid during the period for:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--InterestPaidNet_i02_zYG6KwFmeyij" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Interest</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="From2026-01-01to2026-06-30" id="Fact000483" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,698</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="From2025-01-012025-06-30" id="Fact000484" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,343</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--IncomeTaxesPaidNet_i02_zzUZOUuCcsG2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Income Tax</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2026-01-01to2026-06-30" id="Fact000486" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">51,609</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2025-01-012025-06-30" id="Fact000487" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">47,360</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--NoncashInvestingAndFinancingItemsAbstract_iB_zQiZ0yBK9y3h" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">NON-CASH INVESTING AND FINANCING ACTIVITIES:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--FairValueOfAssetsAcquired_i01_zNr9LqQl7vy9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Assets acquired under credit or debt</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FairValueOfAssetsAcquired" contextRef="From2026-01-01to2026-06-30" id="Fact000492" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">9,778</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FairValueOfAssetsAcquired" contextRef="From2025-01-012025-06-30" id="Fact000493" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,663</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_ecustom--AccountPayableForBusinessAcquisition_i01_zcQlpumUxbX5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Account payable for business acquisition</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0495">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="TGLS:AccountPayableForBusinessAcquisition" contextRef="From2025-01-012025-06-30" id="Fact000496" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,588</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Tecnoglass
Holdings Inc. and Subsidiaries</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(Amounts
in thousands, except share and per share data)</b></span></p>

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

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

<table cellpadding="0" cellspacing="0" id="xdx_30B_114_pn3n3_zj6AnXB6xbte" summary="xdx: Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Shares</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4B8_us-gaap--StatementEquityComponentsAxis_us-gaap--CommonStockMember_zXsQwTs83A0c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Shares</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4BD_us-gaap--StatementEquityComponentsAxis_us-gaap--TreasuryStockCommonMember_z3aFAHfzX1Ti" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4B8_us-gaap--StatementEquityComponentsAxis_us-gaap--AdditionalPaidInCapitalMember_znc1PiCAQ3Yi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Capital</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4BE_us-gaap--StatementEquityComponentsAxis_custom--LegalReservesMember_zLnBVHzBSBtj" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Reserve</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4BB_us-gaap--StatementEquityComponentsAxis_us-gaap--RetainedEarningsMember_zTcSuopF3wac" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"> Earnings</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4B4_us-gaap--StatementEquityComponentsAxis_us-gaap--AccumulatedOtherComprehensiveIncomeMember_zkB9YMS3o2ld" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Loss</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4BF_zUHabHyPMfkh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Equity</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Ordinary Shares,<br/>
 $0.0001 <br/> Par Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Treasury Stock</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Additional<br/>
 Paid in</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Legal</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Retained</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Accumulated<br/>
 Other<br/>
 Comprehensive</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Total<br/>
 Shareholders&#8217;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Shares</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Shares</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Capital</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Reserve</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"> Earnings</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Loss</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Equity</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_433_c20260101__20260331_eus-gaap--StockholdersEquity_iS_zmjp49C54B07" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; font-weight: bold; padding-bottom: 2.5pt">Balance at December 31, 2025</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--SharesOutstanding_iS_pid_c20260101__20260331__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zOfxCHibOERg" title="Balance, shares" style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2025-12-31_us-gaap_CommonStockMember" id="Fact000506" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,389,146</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-12-31_us-gaap_CommonStockMember" id="Fact000498" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--TreasuryStockCommonShares_iS_pid_c20260101__20260331__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_z5ByKgmJTdGg" title="Treasury stock balance, shares" style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" contextRef="AsOf2025-12-31_us-gaap_TreasuryStockCommonMember" id="Fact000508" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,651,420</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-12-31_us-gaap_TreasuryStockCommonMember" id="Fact000499" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">79,218</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-12-31_us-gaap_AdditionalPaidInCapitalMember" id="Fact000500" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">153,358</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-12-31_custom_LegalReservesMember" id="Fact000501" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-12-31_us-gaap_RetainedEarningsMember" id="Fact000502" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">670,558</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000503" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">33,109</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 4%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-12-31" id="Fact000504" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">713,052</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DividendsCommonStock_iN_di_z8eotwqNZQp4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Dividend ($<span id="xdx_909_eus-gaap--SharePrice_iI_pid_c20260331_znjlu1FRFOLl" title="Dividend per share"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2026-03-31" id="Fact000518" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.15</ix:nonFraction></span> per share)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0510">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0511">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0512">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0513">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember" id="Fact000514" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,652</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0515">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-01-012026-03-31" id="Fact000516" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,652</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--TreasuryStockValueAcquiredCostMethod_iN_di_z0vGRT1BihFe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Share Repurchase</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0520">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--TreasuryStockSharesAcquired_pid_c20260101__20260331__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_z1WWbFM48Cih" title="Share Repurchase, shares" style="text-align: right"><ix:nonFraction name="us-gaap:TreasuryStockSharesAcquired" contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember" id="Fact000528" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">372,910</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember" id="Fact000521" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">16,461</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0522">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0523">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0524">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0525">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-03-31" id="Fact000526" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">16,461</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_ziCbuLv5dt7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Change in fair value of investments available for sale and derivative contracts</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0530">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0531">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0532">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0533">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0534">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000535" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">192</ix:nonFraction></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" contextRef="From2026-01-012026-03-31" id="Fact000536" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">192</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_zsSmKZmB8fAj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign currency translation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0538">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0539">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0540">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0541">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0542">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000543" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,212</ix:nonFraction></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-01-012026-03-31" id="Fact000544" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,212</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--ProfitLoss_zOria8bfJ3N3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0546">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0547">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0548">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0549">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember" id="Fact000550" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">31,891</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0551">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-01-012026-03-31" id="Fact000552" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">31,891</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_43D_c20260401__20260630_eus-gaap--StockholdersEquity_iS_zYfrfmU2wh1h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance at March 31, 2026</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--SharesOutstanding_iS_pid_c20260401__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zxX6d5X9P8lk" title="Balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2026-03-31_us-gaap_CommonStockMember" id="Fact000562" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,389,146</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-03-31_us-gaap_CommonStockMember" id="Fact000554" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--TreasuryStockCommonShares_iS_pid_c20260401__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zKcoikX9OC36" title="Treasury stock balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" contextRef="AsOf2026-03-31_us-gaap_TreasuryStockCommonMember" id="Fact000564" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">2,024,330</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-03-31_us-gaap_TreasuryStockCommonMember" id="Fact000555" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">95,679</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-03-31_us-gaap_AdditionalPaidInCapitalMember" id="Fact000556" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">153,358</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-03-31_custom_LegalReservesMember" id="Fact000557" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-03-31_us-gaap_RetainedEarningsMember" id="Fact000558" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">695,797</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000559" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">19,705</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-03-31" id="Fact000560" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">735,234</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DividendsCommonStock_iN_di_zGLZcmPMs94g" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Dividend ($<span id="xdx_908_eus-gaap--SharePrice_iI_pid_c20260630_zxAvqzqTdxOc" title="Dividend per share"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2026-06-30" id="Fact000574" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.15</ix:nonFraction></span> per share)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0566">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0567">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0568">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0569">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember" id="Fact000570" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,655</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0571">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2026-04-012026-06-30" id="Fact000572" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,655</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--StockRepurchasedDuringPeriodValue_iN_di_zQ4uiN0EHx7i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Share Repurchase</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--StockRepurchasedDuringPeriodShares_iN_pid_di_c20260401__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_z7v7fDOwm4P3" title="Share Repurchase, shares" style="text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodShares" contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember" id="Fact000584" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">100</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0576">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0577">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember" id="Fact000578" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0579">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0580">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0581">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2026-04-012026-06-30" id="Fact000582" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale_zej4WnsYWa5f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Change in fair value of investments available for sale</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0586">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0587">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0588">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0589">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0590">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000591" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">50</ix:nonFraction></td><td style="text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" contextRef="From2026-04-012026-06-30" id="Fact000592" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">50</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_zmm8r2zwyke4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign currency translation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0594">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0595">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0596">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0597">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0598">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000599" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">35,693</ix:nonFraction></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2026-04-012026-06-30" id="Fact000600" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">35,693</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--ProfitLoss_z6S8vYUOVbra" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0602">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0603">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0604">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0605">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember" id="Fact000606" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">24,555</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0607">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2026-04-012026-06-30" id="Fact000608" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">24,555</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_434_c20260401__20260630_eus-gaap--StockholdersEquity_iE_zFlyKdrMPAHj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance at June 30, 2026</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--SharesOutstanding_iE_pid_c20260401__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_ziHlvf0PsnS9" title="Balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2026-06-30_us-gaap_CommonStockMember" id="Fact000618" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,389,046</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-06-30_us-gaap_CommonStockMember" id="Fact000610" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--TreasuryStockCommonShares_iE_pid_c20260401__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zPyZ0yQU8pFa" title="Treasury stock balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" contextRef="AsOf2026-06-30_us-gaap_TreasuryStockCommonMember" id="Fact000620" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">2,024,330</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-06-30_us-gaap_TreasuryStockCommonMember" id="Fact000611" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">95,679</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-06-30_us-gaap_AdditionalPaidInCapitalMember" id="Fact000612" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">153,353</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-06-30_custom_LegalReservesMember" id="Fact000613" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-06-30_us-gaap_RetainedEarningsMember" id="Fact000614" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">713,697</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000615" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">15,938</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2026-06-30" id="Fact000616" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">788,772</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Shares</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4B8_us-gaap--StatementEquityComponentsAxis_us-gaap--CommonStockMember_z6HbwWRwnamk" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4B8_us-gaap--StatementEquityComponentsAxis_us-gaap--AdditionalPaidInCapitalMember_zH7mq2oZ12H2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Capital</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4BE_us-gaap--StatementEquityComponentsAxis_custom--LegalReservesMember_zPkbEf20lbPc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Reserve</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4BB_us-gaap--StatementEquityComponentsAxis_us-gaap--RetainedEarningsMember_z88Xq73twO3i" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Earnings</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4B4_us-gaap--StatementEquityComponentsAxis_us-gaap--AccumulatedOtherComprehensiveIncomeMember_z0a22LP5qY8j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Loss</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_4BF_zOUQTfW8iA4b" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Equity</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Ordinary Shares,<br/>
 $0.0001 <br/> Par Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Additional<br/>
 Paid in</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Legal</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Retained </td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Accumulated<br/>
 Other<br/>
 Comprehensive</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">Total<br/>
 Shareholders&#8217;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Shares</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Capital</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Reserve</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Earnings</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Loss</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Equity</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_43F_c20250101__20250331_eus-gaap--StockholdersEquity_iS_zxsZADjTeNk3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 37%; font-weight: bold; padding-bottom: 2.5pt">Balance at December 31, 2024</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--SharesOutstanding_iS_pid_c20250101__20250331__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zsGdWV5kHLQ1" title="Balance, shares" style="border-bottom: Black 2.5pt double; width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2024-12-31_us-gaap_CommonStockMember" id="Fact000629" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,991,558</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2024-12-31_us-gaap_CommonStockMember" id="Fact000622" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember" id="Fact000623" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">192,094</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2024-12-31_custom_LegalReservesMember" id="Fact000624" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2024-12-31_us-gaap_RetainedEarningsMember" id="Fact000625" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">538,787</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 5%; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000626" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">101,161</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="width: 2%; font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; width: 5%; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2024-12-31" id="Fact000627" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">631,183</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DividendsCommonStock_iN_di_za4DJNruO3Z4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Dividend ($<span id="xdx_902_eus-gaap--SharePrice_iI_pid_c20250331_zjkXiJEgtaZd" title="Dividend per share"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2025-03-31" id="Fact000638" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.15</ix:nonFraction></span> per share)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0631">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0632">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0633">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember" id="Fact000634" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,050</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0635">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-01-012025-03-31" id="Fact000636" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,050</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--StockRepurchasedDuringPeriodValue_iN_di_z6XEmwxLD6Sj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Share Repurchase</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--StockRepurchasedDuringPeriodShares_iN_pid_di_c20250101__20250331__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_z2q7RNOfzd8h" title="Share Repurchase, shares" style="text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodShares" contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember" id="Fact000647" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,610</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0640">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember" id="Fact000641" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">124</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0642">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0643">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0644">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-01-012025-03-31" id="Fact000645" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">124</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_z0R3MFxkCGvf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Derivative financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0649">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0650">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0651">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0652">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000653" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">637</ix:nonFraction></td><td style="text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-01-012025-03-31" id="Fact000654" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">637</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_zUitm3xMVzS3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign currency translation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0656">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0657">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0658">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0659">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000660" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">19,576</ix:nonFraction></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-01-012025-03-31" id="Fact000661" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">19,576</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--ProfitLoss_zbgnlIrLlF28" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0663">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0664">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0665">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember" id="Fact000666" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">42,189</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0667">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-01-012025-03-31" id="Fact000668" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">42,189</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_433_c20250401__20250630_eus-gaap--StockholdersEquity_iS_z9yfwttDKcAj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance at March 31, 2025</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--SharesOutstanding_iS_pid_c20250401__20250630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zNpbe1E9Wpci" title="Balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2025-03-31_us-gaap_CommonStockMember" id="Fact000677" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,989,948</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_CommonStockMember" id="Fact000670" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember" id="Fact000671" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">191,970</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_custom_LegalReservesMember" id="Fact000672" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_RetainedEarningsMember" id="Fact000673" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">573,926</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000674" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">82,222</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31" id="Fact000675" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">685,137</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_437_c20250401__20250630_eus-gaap--StockholdersEquity_iS_zkcSGRU5uAn8" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--SharesOutstanding_iS_pid_c20250401__20250630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_z78P6b6mcvB4" title="Balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2025-03-31_us-gaap_CommonStockMember" id="Fact000686" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,989,948</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_CommonStockMember" id="Fact000679" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember" id="Fact000680" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">191,970</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_custom_LegalReservesMember" id="Fact000681" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_RetainedEarningsMember" id="Fact000682" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">573,926</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000683" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">82,222</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-03-31" id="Fact000684" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">685,137</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DividendsCommonStock_iN_di_z9q4SquCgn1f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Dividend ($<span id="xdx_906_eus-gaap--SharePrice_iI_pid_c20250630_zlnBRuD33Cde" title="Dividend per share"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2025-06-30" id="Fact000695" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.15</ix:nonFraction></span> per share)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0688">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0689">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0690">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember" id="Fact000691" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,049</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0692">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:DividendsCommonStock" contextRef="From2025-04-012025-06-30" id="Fact000693" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,049</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--StockRepurchasedDuringPeriodValue_iN_di_zYDB1wZABwhe" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Share Repurchase</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--StockRepurchasedDuringPeriodShares_iN_pid_di_c20250401__20250630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zrexuDPpbgYi" title="Share Repurchase, shares" style="text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodShares" contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember" id="Fact000704" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">2,800</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0697">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember" id="Fact000698" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">215</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0699">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0700">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0701">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2025-04-012025-06-30" id="Fact000702" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">215</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_zJ6qNe5SAdei" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Derivative financial instruments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0706">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0707">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0708">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0709">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000710" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">785</ix:nonFraction></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" contextRef="From2025-04-012025-06-30" id="Fact000711" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">785</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_zaFWSdQpcIi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign currency translation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0713">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0714">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0715">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0716">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000717" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,260</ix:nonFraction></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="From2025-04-012025-06-30" id="Fact000718" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,260</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--ProfitLoss_z8skhN35S0M7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0720">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0721">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0722">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember" id="Fact000723" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">44,083</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0724">-</span></td><td style="text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:ProfitLoss" contextRef="From2025-04-012025-06-30" id="Fact000725" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">44,083</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_43C_c20250401__20250630_eus-gaap--StockholdersEquity_iE_zS5e8Pl0m9Mb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance at Jun 30, 2025</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--SharesOutstanding_iE_pid_c20250401__20250630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zVWnB9Q1bevl" title="Balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2025-06-30_us-gaap_CommonStockMember" id="Fact000734" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,987,148</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_CommonStockMember" id="Fact000727" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_AdditionalPaidInCapitalMember" id="Fact000728" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">191,755</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_custom_LegalReservesMember" id="Fact000729" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_RetainedEarningsMember" id="Fact000730" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">610,960</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000731" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">68,177</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30" id="Fact000732" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">736,001</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_43E_c20250401__20250630_eus-gaap--StockholdersEquity_iE_zwUZQoTCxeX1" style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 2.5pt">Balance</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--SharesOutstanding_iE_pid_c20250401__20250630__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zOJOLzxy69Ih" title="Balance, shares" style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2025-06-30_us-gaap_CommonStockMember" id="Fact000743" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,987,148</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_CommonStockMember" id="Fact000736" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_AdditionalPaidInCapitalMember" id="Fact000737" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">191,755</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_custom_LegalReservesMember" id="Fact000738" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,458</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_RetainedEarningsMember" id="Fact000739" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">610,960</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="Fact000740" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">68,177</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2025-06-30" id="Fact000741" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">736,001</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
</table>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 40pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying notes are an integral part of these unaudited condensed consolidated financial statements.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Tecnoglass
Holdings Inc. and Subsidiaries</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="a_007"></span>Notes
to Condensed Consolidated Financial Statements</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(Amounts
in thousands, except share and per share data)</b></span></p>

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

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000745" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"><p id="xdx_805_eus-gaap--OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_zrS0XKDxICVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
1. <span id="xdx_82C_zeFH3oOi0IDf">General</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Tecnoglass
Holdings Inc., a Florida corporation (the &#8220;Company&#8221;, &#8220;Tecnoglass&#8221;, &#8220;we&#8221;, &#8220;us&#8221; or &#8220;our&#8221;)
manufactures hi-specification, architectural glass and windows for the global residential and commercial construction industries. Currently
the Company offers design, production, marketing, and installation of architectural systems for buildings of high, medium and low elevation
size. Products include windows and doors in glass, aluminum, and vinyl, office partitions and interior divisions, floating facades and
commercial window showcases. The Company sells to customers in North, Central and South America, and exports more than 97% of its production
to foreign countries.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company manufactures glass, aluminum, and vinyl products. Its glass products include tempered glass, laminated glass, thermo-acoustic
glass, curved glass, silk-screened glass, acoustic glass and digital print glass. Its Alutions plant produces mill finished, anodized,
painted aluminum profiles and rods, tubes, bars and plates. Alutions&#8217; operations include extrusion, smelting, painting and anodizing
processes, and exporting, importing and marketing aluminum products. Its newly installed vinyl assembling lines manufacture and distributes
cutting-edge vinyl windows for new and existing customers.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company also designs, manufactures, markets and installs architectural systems for high, medium and low-rise construction, glass, aluminum
and vinyl windows and doors, office dividers and interiors, floating facades and commercial display windows.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company was originally incorporated in 2013 in the Cayman Islands as Andina Acquisition Corporation and later changed its name to Tecnoglass
Inc. in connection with a business combination between Tecnoglass subsidiaries C.I. Energia Solar S.A. E.S. Windows (&#8220;ES&#8221;)
and Tecnglass S.A. (&#8220;TG&#8221;) and Andina Acquisition Corporation. Effective July 7, 2026, Tecnoglass Inc. completed a change
of jurisdiction of incorporation from the Cayman Islands to the State of Florida through a transaction known as a continuation under
Section 206 of the Companies Act (as amended) of the Cayman Islands and Section 607.11920 of the Florida Business Corporation Act (the
&#8220;Continuation&#8221;). The Continuation became effective on July 7, 2026 upon the Company&#8217;s registration with the State of
Florida and the concurrent de-registration application of the Company in the Cayman Islands. As part of the Continuation, the Company&#8217;s
name was changed to Tecnoglass Holdings Inc.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000747" name="us-gaap:SignificantAccountingPoliciesTextBlock"><p id="xdx_808_eus-gaap--SignificantAccountingPoliciesTextBlock_zFZLOL7iSP54" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
2. <span id="xdx_82C_zpLhVrjMenp8">Basis of Presentation and Summary of Significant Accounting Policies</span></b></span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000749" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock"><p id="xdx_842_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zbEmYlFw8EP1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86E_zmQdi6Vc4Lga">Basis
of Presentation and Use of Estimates</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally
accepted in the United States of America (&#8220;US GAAP&#8221;) and pursuant to the accounting and disclosure rules and regulations
of the Securities and Exchange Commission (&#8220;SEC&#8221;) for interim reporting purposes. The results reported in these unaudited
condensed consolidated financial statements are not necessarily indicative of results that may be expected for the entire year. These
unaudited condensed consolidated financial statements should be read in conjunction with the information contained in the Company&#8217;s
Annual Report on Form 10-K for the year ended December 31, 2025. The year-end condensed balance sheet data was derived from the audited
financial statements in the Annual Report on Form 10-K but does not include all disclosures required by US GAAP.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of these unaudited condensed consolidated financial statements requires the Company to make estimates and judgments that
affect the reported amounts of assets and liabilities, revenues and expenses, and related disclosures of contingent assets and liabilities
at the date of the Company&#8217;s financial statements. Actual results may differ from these estimates under different assumptions and
conditions. Estimates utilized in the preparation of these unaudited condensed consolidated financial statements relate to the collectability
of account receivables, the valuation of inventories, estimated earnings on uncompleted contracts, useful lives and potential impairment
of long-lived assets. Changes in estimates are reflected in the periods during which they become known. Actual amounts may differ from
these estimates and could differ materially. These financial statements reflect all adjustments that in the opinion of management are
necessary for a fair statement of the financial position, results of operations and cash flows for the period presented, and are of a
normal, recurring nature.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has one operating segment, Architectural Glass and Windows, which is also its reporting segment. The segment comprises the design,
manufacturing, distribution, marketing and installation of high-specification architectural glass and window products sold to residential
and commercial markets.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
chief operating decision maker (&#8220;CODM&#8221;) assesses performance and decides how to allocate resources based on gross profit
and net income that also is reported on the income statement as consolidated net income, cash flows from operations which are reported
on the consolidated statement of cash flows, along with certain non-G.A.A.P metrics. Significant segment expenses include cost of sales,
selling expense, and general and administrative expenses. Other segment items included in consolidated net income are interest expense,
other expense, net and the provision for income taxes, which are reflected in the condensed consolidated statements of operations and
other comprehensive income. These metrics are used to monitor budgeted versus actual results, and competitive analysis by benchmarking
to the Company&#8217;s competitors. The Company&#8217;s CODM are the Company&#8217;s Chief Executive Officer and Chief Operating Officer
acting together as a group.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company performs intra-entity sales and transfers within its single segment comprised of several vertically integrated processes including
its main manufacturing operations in Colombia and distribution and installation in the United States. The Company considers its operations
to be a single reporting segment because it only produces architectural glass and window systems to serve similar markets in a vertically
integrated platform.</span></p>

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

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

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

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000751" name="us-gaap:ConsolidationPolicyTextBlock"><p id="xdx_84D_eus-gaap--ConsolidationPolicyTextBlock_zRtmrbFGKsod" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_864_zd5tORF7wbfe">Principles
of Consolidation</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
unaudited consolidated financial statements consolidate Tecnoglass, its subsidiaries TG, ES, ES Windows LLC (&#8220;ESW LLC&#8221;),
Tecnoglass LLC, Tecno RE LLC, Tecnoglass Armour, LLC, GM&amp;P Consulting and Glazing Contractors (&#8220;GM&amp;P&#8221;), Componenti
USA LLC, ES Metals SAS (&#8220;ES Metals&#8221;), Ventanas Solar S.A (&#8220;VS&#8221;), which are entities in which we have a controlling
financial interest because we hold a majority voting interest. To determine if we hold a controlling financial interest in an entity,
we first evaluate if we are required to apply the variable interest entity (&#8220;VIE&#8221;) model to the entity, otherwise the entity
is evaluated under the voting interest model. All significant intercompany accounts and transactions are eliminated in consolidation,
including unrealized intercompany profits and losses. The equity method of accounting is used for investments in affiliates and other
joint ventures over which the Company has significant influence but does not have effective control.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000753" name="us-gaap:DerivativesPolicyTextBlock"><p id="xdx_842_eus-gaap--DerivativesPolicyTextBlock_zHY21XXkZs3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86D_zsDn1hOuWUug">Derivative
Financial Instruments</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes all derivative financial instruments as either assets or liabilities at fair value on the condensed consolidated balance
sheet. The unrealized gains or losses arising from changes in fair value of derivative instruments that are designated and qualify as
cash flow hedges, are recorded in the condensed consolidated statement of comprehensive income. Amounts in accumulated other comprehensive
loss on the condensed consolidated balance sheet are reclassified into the condensed consolidated statement of income in the same period
or periods during which the hedged transactions are settled.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000755" name="us-gaap:ExtendedProductWarrantyPolicy"><p id="xdx_84C_eus-gaap--ExtendedProductWarrantyPolicy_zUX3zI3TekQ9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_zj26imsZYbxc">Product
Warranties</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_eus-gaap--StandardProductWarrantyDescription_c20260101__20260630_zvQenju0X9L2" title="Product warranties description"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact000757" name="us-gaap:StandardProductWarrantyDescription">The
Company offers product warranties in connection with the sale and installation of its products that are competitive in the markets in
which the products are sold. Standard warranties vary based upon the product and service offered and durations are generally from five
to ten years for architectural glass, curtain wall, laminated and tempered glass, window and door products.</ix:nonNumeric></span> Warranties are not priced
or sold separately and do not provide the customer with services or coverages in addition to the assurance that the product complies
with original agreed-upon specifications. Claims are settled by replacement of the warrantied products. The Company records a liability
for estimated future warranty costs at the time of sale based on historical claims data and projected revenues. This liability is reassessed
periodically based on updated claims experience and revenue projections.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000759" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock"><p id="xdx_890_eus-gaap--ScheduleOfProductWarrantyLiabilityTableTextBlock_zlP2fhss76wi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes in the product warranty liability for the six months ended June 30, 2026, are:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zTvqIZrikBmb" style="display: none">Schedule
of Product Warranty Liability</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_494_20260101__20260630_zzNKflqq1Ifi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20250101__20250630_zhCm0PRRTKT8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iS_pn3n3_znjD6g3tfZ31" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Balance at beginning of period</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:StandardProductWarrantyAccrual" contextRef="AsOf2025-12-31" id="Fact000761" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">363</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0762">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--StandardProductWarrantyAccrualWarrantiesIssued_pn3n3_zTTjhMO6YE96" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Accruals for product warranties issued during period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" contextRef="From2026-01-01to2026-06-30" id="Fact000764" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">550</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" contextRef="From2025-01-012025-06-30" id="Fact000765" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">570</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--StandardProductWarrantyAccrualPayments_iN_pn3n3_di_zWPvdmPUf28h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Reductions for payments made under product warranties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StandardProductWarrantyAccrualPayments" contextRef="From2026-01-01to2026-06-30" id="Fact000767" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">610</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StandardProductWarrantyAccrualPayments" contextRef="From2025-01-012025-06-30" id="Fact000768" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">279</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iE_pn3n3_zcfkKXnHHTmh" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance at end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:StandardProductWarrantyAccrual" contextRef="AsOf2026-06-30" id="Fact000770" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">303</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:StandardProductWarrantyAccrual" contextRef="AsOf2025-06-30" id="Fact000771" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">291</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000773" name="TGLS:RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock"><p id="xdx_84F_ecustom--RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_zSNDGwu1GL3a" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_869_zaIx1sfiyFwa">Recovery
of Previously Paid Import Tariffs</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three months ended March 31, 2026, the Company recorded $<span id="xdx_905_ecustom--RecoveryOfPreviouslyPaidImportTariffs_pn3n3_c20260101__20260331_zcqGbBcSij8c" title="Recovery of previously paid import tariffs"><ix:nonFraction name="TGLS:RecoveryOfPreviouslyPaidImportTariffs" contextRef="From2026-01-012026-03-31" id="Fact000775" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,876</ix:nonFraction></span> of recoveries associated with import tariffs on certain products imported
to the United States under the International Emergency Economic Powers Act (&#8220;IEEPA&#8221;) paid in 2025 and the first quarter of
2026. In February 2026, the U.S. Supreme Court ruled that certain tariffs imposed under the IEEPA were not valid, and in March 2026,
the Court of International Trade ruled that U.S. Customs and Border Protection was required, subject to applicable procedures, to refund
IEEPA tariffs that had been collected. The Company filed reimbursement claims with U.S. Customs and Border Protection, which were accepted
on April 20, 2026 and reimbursement was received in July, 2026. These recoveries relate to previous year and current period imports for
which eligibility for refund was subsequently established. The Company recognized the recovery in the period in which realization became
probable and reasonably estimable as a reduction to selling expenses on the Condensed Consolidated Statement of Operations.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000777" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock"><p id="xdx_84A_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z7uUoNXYp8Kj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86B_zK9uuZOnU9Zc">Recently
Issued Accounting Pronouncements</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
November 2024, the FASB issued ASU 2024-03 &#8220;Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation
Disclosures (Subtopic 220-40)&#8221;. The Board is issuing this Update to improve the disclosures about a public business entity&#8217;s
expenses and address requests from investors for more detailed information about the types of expenses (including purchases of inventory,
employee compensation, depreciation, amortization, and depletion) in commonly presented expense captions (such as cost of sales, SG&amp;A,
and research and development). The amendments in this Update are effective for annual reporting periods beginning after December 15,
2026, and interim reporting periods beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating
the potential effect of this ASU on its consolidated financial statements</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
December 2025, the FASB issued ASU 2025-11 &#8220;Interim Reporting (Topic 270)&#8221;. The Board is issuing amendments in this Update
to improve the guidance in Topic 270, Interim Reporting, by improving the navigability of the required interim disclosures and clarifying
when that guidance is applicable. The amendments also provide additional guidance on what disclosures should be provided in interim reporting
periods. The amendments in this Update are effective for interim reporting periods within annual reporting periods beginning after December
15, 2027, for public business entities and for interim reporting periods within annual reporting 3 periods beginning after December 15,
2028, for entities other than public business entities. Early adoption is permitted for all entities. The Company is currently evaluating
the potential effect of this ASU on its interim consolidated financial statements</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
November 2025, the FASB issued ASU 2025-09 &#8220;Derivative and Hedging (Topic 815)&#8221;. Consistent with the original objective of
Update 2017-12, the objective of this Update is to more closely align hedge accounting with the economics of an entity&#8217;s risk management
activities. The amendments included in the five issues addressed in this Update are intended to better reflect those strategies in financial
reporting by enabling entities to achieve and maintain hedge accounting for highly effective economic hedges of forecasted transactions.
The five issues addressed are: Issue 1: Similar Risk Assessment for Cash Flow Hedges, Issue 2: Hedging Forecasted Interest Payments on
Choose-Your-Rate Debt Instruments, Issue 3: Cash Flow Hedges of Nonfinancial Forecasted Transactions, Issue 4: Net Written Options as
Hedging Instruments and Issue 5: Foreign-Currency-Denominated Debt Instrument as Hedging Instrument and Hedged Item (Dual Hedge). For
public business entities, the amendments in this Update are effective for annual reporting periods beginning after December 15, 2026,
and interim periods within those annual reporting periods. The Company is currently evaluating the potential effect of this ASU on its
consolidated financial statements.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
September 2025, the FASB issued ASU 2025-06 &#8220;Intangibles-Goodwill and other-Internal-Use Software (Subtopic 350-40)&#8221;. The
Board is issuing this Update to modernize the accounting for software costs that are accounted for under Subtopic 350-40, Intangibles&#8212;Goodwill
and Other&#8212;Internal-Use Software (referred to as &#8220;internal-use software&#8221;). Feedback from preparer and practitioner stakeholders
on the 2021 FASB Invitation to Comment, Agenda Consultation, indicated that the accounting for software costs should be a top priority
for the Board. Considering this feedback, the Board decided to make targeted improvements to Subtopic 350-40 to increase the operability
of the recognition guidance considering different methods of software development. The amendments in this Update are effective for all
entities for annual reporting periods beginning after December 15, 2027, and interim reporting periods 4 within those annual reporting
periods. Early adoption is permitted as of the beginning of an annual reporting period. The Company is currently evaluating the potential
effect of this ASU on its consolidated financial statements.</span></p>

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

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

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

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

</ix:nonNumeric></ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000779" name="us-gaap:BusinessCombinationDisclosureTextBlock"><p id="xdx_80C_eus-gaap--BusinessCombinationDisclosureTextBlock_zay3KL92w4N8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
3. <span id="xdx_82F_zpXY331xm7i6">Acquisitions</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
April 3, 2025, Tecnoglass acquired certain assets and assumed liabilities of Florida-based Continental Glass Systems, LLC., a premier
provider of innovative architectural glass and glazing solutions in the Southeast U.S., to create wholly owned Contiglass Asset Acquisition,
LLC (&#8220;Contiglass). This acquisition included a manufacturing plant, various intangibles, and a substantial project backlog in both
execution and pipeline phases. This transaction is considered a business combination under U.S. GAAP. Continental&#8217;s production
capabilities, high-quality product portfolio, and reputation for excellence strengthens Tecnoglass&#8217; U.S. market presence, broadens
its client reach, and creates synergies that reinforce Tecnoglass&#8217; leadership position in the architectural glass industry. Additionally,
the Company anticipates operational benefits as it integrates Continental&#8217;s supply chains into its existing manufacturing operations.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
purchase price for the acquisition was $<span id="xdx_909_eus-gaap--BusinessCombinationPriceOfAcquisitionExpected_pn3n3_c20250403__20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zXBYz13a5Su1" title="Purchase price for acquisition"><ix:nonFraction name="us-gaap:BusinessCombinationPriceOfAcquisitionExpected" contextRef="From2025-04-032025-04-03_custom_ContiglassAssetAcquisitionLLCMember" id="Fact000781" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,429</ix:nonFraction></span>, of which $<span id="xdx_90C_eus-gaap--BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_iI_pn3n3_c20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zO3VRR2P1iPg" title="Cash paid in acquisition"><ix:nonFraction name="us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" contextRef="AsOf2025-04-03_custom_ContiglassAssetAcquisitionLLCMember" id="Fact000783" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,588</ix:nonFraction></span> of the purchase price was paid in cash by the Company on April 3, 2025.
Post-acquisition working capital adjustment of $<span id="xdx_903_ecustom--WorkingCapitalAdjustment_iI_pn3n3_c20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zOjCtIxUMya3" title="Working capital adjustment"><ix:nonFraction name="TGLS:WorkingCapitalAdjustment" contextRef="AsOf2025-04-03_custom_ContiglassAssetAcquisitionLLCMember" id="Fact000785" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">253</ix:nonFraction></span> was paid 45 days after transaction closing date, with the remaining amount to be
payable by the Company in cash within 365 days after closing date, subsequently extended. The total amount of acquisition-related costs
was $<span id="xdx_902_eus-gaap--BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_iI_pn3n3_c20250630_zSIEDpoBdX51" title="Acquisition-related costs"><ix:nonFraction name="us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" contextRef="AsOf2025-06-30" id="Fact000787" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">588</ix:nonFraction></span>, which are included within general and administrative expenses in the Statement of operations during the second quarter of 2025.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
total consideration transferred was $<span id="xdx_905_eus-gaap--BusinessCombinationPriceOfAcquisitionExpected_pn3n3_c20250403__20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zDDcsaK4ANq4" title="Purchase price for acquisition"><ix:nonFraction name="us-gaap:BusinessCombinationPriceOfAcquisitionExpected" contextRef="From2025-04-032025-04-03_custom_ContiglassAssetAcquisitionLLCMember" id="Fact000789" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,429</ix:nonFraction></span>. Under ASC 805, a company can apply measurement period adjustments during the twelve-month
period after the date of acquisition. During this period, the acquirer may adjust preliminary amounts recognized at the acquisition date
to their subsequently determined final fair values. The allocation of the consideration transferred was based on management&#8217;s judgment
after evaluation of several factors, including a preliminary valuation assessment. The adjustment period ended on April 3, 2026.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000791" name="us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"><p id="xdx_89E_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zvbP8SSBwZn8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the purchase price allocation of the total consideration transferred:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zYcHFEAfGZU3" style="display: none">Schedule
of Purchase Price Allocation Consideration Transferred</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold">Consideration Transferred:</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Total purchase price</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_pn3n3_c20260101__20260630_zjP6750rIIye" title="Total purchase price" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2026-01-01to2026-06-30" id="Fact000793" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,429</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold">Recognized amounts of identifiable assets acquired and liabilities assumed:</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20260630__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember_ztKDiCL1h5tc" style="border-bottom: Black 1pt solid; text-align: center">Preliminary<br/>
 Purchase<br/>
 Price<br/>
 Allocation</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260630__srt--RestatementAxis__srt--RevisionOfPriorPeriodReclassificationAdjustmentMember_zV6MEDdmNz89" style="border-bottom: Black 1pt solid; text-align: center">Measurement<br/>
 Period<br/>
 Adjustments</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260630_zQsXFEEZBIfg" style="border-bottom: Black 1pt solid; text-align: center">Adjusted<br/>
 Purchase<br/>
 Price<br/>
 Allocation</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pn3n3_znYefwClbKl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash and equivalents</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0795">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0796">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0797">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_pn3n3_zBHTHkbsf3Hk" style="vertical-align: bottom; background-color: White">
    <td style="width: 52%; text-align: left">Accounts Receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000799" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,814</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0800">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="AsOf2026-06-30" id="Fact000801" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,814</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_pn3n3_zAMMc7NFsTF1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other Current Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000803" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">585</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0804">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" contextRef="AsOf2026-06-30" id="Fact000805" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">585</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_pn3n3_ziU0wsWXlLPd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Property, plant, and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000807" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">826</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0808">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="AsOf2026-06-30" id="Fact000809" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">826</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_iI_pn3n3_ztTg17U7N4p9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Trade Name</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000811" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">170</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0812">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="AsOf2026-06-30" id="Fact000813" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">170</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_iI_pn3n3_zOYNKy2thvU8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract Backlog</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000815" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">670</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0816">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" contextRef="AsOf2026-06-30" id="Fact000817" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">670</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_iI_pn3n3_znaucc7zkVi7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptance and FBC permits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000819" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,260</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0820">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" contextRef="AsOf2026-06-30" id="Fact000821" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,260</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iI_pn3n3_zv7AqmO8Vi45" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Right-of-use assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000823" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,192</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="Fact000824" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">555</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" contextRef="AsOf2026-06-30" id="Fact000825" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">637</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pn3n3_di_zWDIb2Fkzvo6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Account payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000827" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,890</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0828">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="AsOf2026-06-30" id="Fact000829" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,890</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_iI_pn3n3_zvzMbeStHU6e" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Accrued expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000831" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">81</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0832">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" contextRef="AsOf2026-06-30" id="Fact000833" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">81</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_iI_pn3n3_zz0qhELdTuL6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Service revenue deposit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000835" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">518</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="Fact000836" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">94</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" contextRef="AsOf2026-06-30" id="Fact000837" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">424</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_iI_pn3n3_zc4AAZAkjHme" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Lease liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000839" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">1,229</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="Fact000840" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">580</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" contextRef="AsOf2026-06-30" id="Fact000841" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">649</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_iI_pn3n3_z26G52jgV1b2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Billings in excess of cost and profit</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000843" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">5,987</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0844">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" contextRef="AsOf2026-06-30" id="Fact000845" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">5,987</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iTI_pn3n3_zBtw5vgxTAce" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Total identifiable net assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000847" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,812</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="Fact000848" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">119</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" contextRef="AsOf2026-06-30" id="Fact000849" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,931</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_pn3n3_zBhlthppEaw2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Goodwill</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember" id="Fact000851" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,617</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" id="Fact000852" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">119</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="AsOf2026-06-30" id="Fact000853" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,498</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>


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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
excess of the consideration transferred over the estimated fair values of assets acquired and liabilities assumed were recorded as goodwill.
The identifiable intangible asset subject to amortization was the tradename, backlog of projects, and certain Notice of Acceptance and
Florida Building Code permits, which have a remaining useful life of <span id="xdx_907_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_iI_dtY_c20260630__srt--RangeAxis__srt--MinimumMember_zjWifEjdtjB5" title="Intangible asset, finite-lived, useful life" style="display: none"><ix:nonNumeric contextRef="AsOf2026-06-30_srt_MinimumMember" format="ixt-sec:duryear" id="Fact000855" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife">2</ix:nonNumeric></span>two to <span id="xdx_901_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_iI_dc_c20260630__srt--RangeAxis__srt--MaximumMember_zoVzPQi8CQNb" title="Intangible asset, finite-lived, useful life"><ix:nonNumeric contextRef="AsOf2026-06-30_srt_MaximumMember" format="ixt-sec:durwordsen" id="Fact000857" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife">five years</ix:nonNumeric></span>. See &#8220;Note 6 &#8211; Goodwill and Intangible
Assets&#8221; for additional information.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000859" name="us-gaap:InventoryDisclosureTextBlock"><p id="xdx_805_eus-gaap--InventoryDisclosureTextBlock_zkkNHN4LDgMc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
4. - <span id="xdx_820_zMquiwWzXxzf">Inventories, net</span></b></span></p>

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000861" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock"><p id="xdx_899_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_z5gPgIy7lEIe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zAcvYPwPZzM6" style="display: none">Schedule of Inventories</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zAaUQgR6n373" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30, <br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20251231_z82EcYzyKmRa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31, <br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--InventoryRawMaterials_iI_pn3n3_maIGzzds_zuu6CJGzNYY" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Raw materials</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:InventoryRawMaterials" contextRef="AsOf2026-06-30" id="Fact000863" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">201,805</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:InventoryRawMaterials" contextRef="AsOf2025-12-31" id="Fact000864" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">152,174</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InventoryWorkInProcess_iI_pn3n3_maIGzzds_zxprYBe7L70l" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Work in process</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="AsOf2026-06-30" id="Fact000866" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">31,268</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="AsOf2025-12-31" id="Fact000867" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">27,467</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--InventoryFinishedGoods_iI_pn3n3_maIGzzds_zVvzASOSglil" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Finished goods</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="AsOf2026-06-30" id="Fact000869" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,325</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="AsOf2025-12-31" id="Fact000870" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,222</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--OtherInventoriesSpareParts_iI_pn3n3_maIGzzds_zZwEdqsixlk5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Spares and accessories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherInventoriesSpareParts" contextRef="AsOf2026-06-30" id="Fact000872" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">33,437</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherInventoriesSpareParts" contextRef="AsOf2025-12-31" id="Fact000873" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">28,662</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--InventoryPackingMaterialGross_iI_pn3n3_maIGzzds_zXHB9z6162S1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Packing material</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="TGLS:InventoryPackingMaterialGross" contextRef="AsOf2026-06-30" id="Fact000875" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,384</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="TGLS:InventoryPackingMaterialGross" contextRef="AsOf2025-12-31" id="Fact000876" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,439</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InventoryGross_iTI_pn3n3_mtIGzzds_maINzh7N_zPCNvAd5jBwc" style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total Inventories, gross</span></td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:InventoryGross" contextRef="AsOf2026-06-30" id="Fact000878" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">272,219</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:InventoryGross" contextRef="AsOf2025-12-31" id="Fact000879" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">213,964</ix:nonFraction></td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InventoryValuationReserves_iNI_pn3n3_di_msINzh7N_zqlLQgzvdhK1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Less: Inventory allowance</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:InventoryValuationReserves" contextRef="AsOf2026-06-30" id="Fact000881" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">624</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:InventoryValuationReserves" contextRef="AsOf2025-12-31" id="Fact000882" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">440</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pn3n3_mtINzh7N_zuLpBCNV2eo1" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total inventories, net</span></td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2026-06-30" id="Fact000884" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">271,595</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2025-12-31" id="Fact000885" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">213,524</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

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

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

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

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000887" name="us-gaap:RevenueFromContractWithCustomerTextBlock"><p id="xdx_801_eus-gaap--RevenueFromContractWithCustomerTextBlock_zShFnIC9nCz9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
5. &#8211; <span id="xdx_821_zdlGpYnPpaya">Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities</span></b></span></p>

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

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

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000889" name="us-gaap:DisaggregationOfRevenueTableTextBlock"><p id="xdx_895_eus-gaap--DisaggregationOfRevenueTableTextBlock_zsC3zsQ1pnmg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company disaggregates its sales with customers by revenue recognition method for its <span id="xdx_900_eus-gaap--NumberOfReportableSegments_uSegment_c20260101__20260630_z6ICEuJJ27c7" title="Number of reportable segment" style="display: none"><ix:nonFraction name="us-gaap:NumberOfReportableSegments" contextRef="From2026-01-01to2026-06-30" id="Fact000891" format="ixt:numdotdecimal" decimals="INF" unitRef="Segment">1</ix:nonFraction></span>only segment, as the Company believes these factors
affect nature, amount, timing and uncertainty of the Company&#8217;s revenue and cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_ziFRdLhQyVU6" style="display: none">Schedule
of Disaggregation by Revenue</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_zn8aG6GqW9F9" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_z2jG2OAONSs2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_z7kVs0v4gvKf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_zjlA39fWrX8c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--FixedPriceContractsMember_z4CXt8Dzjch4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Fixed price contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_custom_FixedPriceContractsMember" id="Fact000893" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">79,645</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_custom_FixedPriceContractsMember" id="Fact000894" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">61,228</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_custom_FixedPriceContractsMember" id="Fact000895" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">155,753</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_custom_FixedPriceContractsMember" id="Fact000896" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">114,202</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ProductSalesMember_zf1YjCCrnCn6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Product sales</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_custom_ProductSalesMember" id="Fact000898" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">215,646</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_custom_ProductSalesMember" id="Fact000899" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">194,318</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_custom_ProductSalesMember" id="Fact000900" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">388,550</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_custom_ProductSalesMember" id="Fact000901" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">363,632</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_zw8Sg9JecUy6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30" id="Fact000903" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">295,291</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30" id="Fact000904" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">255,546</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-01to2026-06-30" id="Fact000905" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">544,303</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30" id="Fact000906" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">477,834</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>


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

<ix:nonNumeric contextRef="From2026-01-012026-06-30_us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember" escape="true" id="Fact000908" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock"><p id="xdx_893_eus-gaap--ScheduleOfSegmentReportingInformationBySegmentTextBlock_hus-gaap--StatementBusinessSegmentsAxis__us-gaap--ReportableSegmentAggregationBeforeOtherOperatingSegmentMember_zLROoDif4zG3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents revenues broken down by geographical location:</span></p>

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

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_z3KO7z92R3gc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_znX09XTqZ01c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_zWP1NOFzGNga" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_z3rZBeMkzlSa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--CO_z5EmpHrky3J" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Colombia</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_country_CO" id="Fact000910" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,154</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_country_CO" id="Fact000911" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,621</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_country_CO" id="Fact000912" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,673</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_country_CO" id="Fact000913" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,035</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--US_zrio2RGQcPY" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_country_US" id="Fact000915" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">286,242</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_country_US" id="Fact000916" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">242,347</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_country_US" id="Fact000917" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">523,382</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_country_US" id="Fact000918" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">454,801</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__custom--OtherMember_zN4M3ML5NENg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Other</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_custom_OtherMember" id="Fact000920" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,895</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_custom_OtherMember" id="Fact000921" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,578</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_custom_OtherMember" id="Fact000922" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,248</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_custom_OtherMember" id="Fact000923" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">9,998</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z43kKRDNiWl3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30" id="Fact000925" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">295,291</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30" id="Fact000926" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">255,546</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-01to2026-06-30" id="Fact000927" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">544,303</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30" id="Fact000928" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">477,834</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000930" name="TGLS:ScheduleOfRevenuesDistributionByEndMarketTableTextBlock"><p id="xdx_89E_ecustom--ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_zVLhPcVI6SM5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents revenues broken down by market:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zT6LyzY1fQOf" style="display: none">Schedule
of Revenues Distribution By End Market</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_zVr9I0TmHxVi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_zGJFHwY5Rl8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_zTG1cC6P8iV5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_zU371M67Az06" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ResidentialMember_z5vUE3sCNST1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Residential</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_custom_ResidentialMember" id="Fact000932" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">126,499</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_custom_ResidentialMember" id="Fact000933" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">109,598</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_custom_ResidentialMember" id="Fact000934" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">214,969</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_custom_ResidentialMember" id="Fact000935" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">198,527</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--CommercialMember_zg19wcpVOyf4" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">Commercial</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30_custom_CommercialMember" id="Fact000937" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">168,792</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30_custom_CommercialMember" id="Fact000938" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">145,948</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-012026-06-30_custom_CommercialMember" id="Fact000939" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">329,334</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30_custom_CommercialMember" id="Fact000940" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">279,307</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z2HsdPptAFp4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-04-012026-06-30" id="Fact000942" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">295,291</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-04-012025-06-30" id="Fact000943" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">255,546</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2026-01-01to2026-06-30" id="Fact000944" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">544,303</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2025-01-012025-06-30" id="Fact000945" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">477,834</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we extend credit to customers on a generally non-collateralized basis. The Company maintains an allowance
for expected credit losses which is based on management&#8217;s assessments of the amount which may become uncollectible in the future
and is determined through consideration of our write-off history, specific identification of uncollectible accounts based in part on
the customer&#8217;s past due balance (based on contractual terms), and consideration of prevailing economic and industry conditions.
Uncollectible accounts are written off after repeated attempts to collect from the customer have been unsuccessful.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000947" name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"><p id="xdx_890_eus-gaap--ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_zSvMX8cghHh9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trade
accounts receivable consists of the following:</span></p>

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

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zaAWCVWwsc99" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zrSnZg4Bs25j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--AccountsReceivableGrossCurrent_iI_pn3n3_maARNCzXOy_zXoZOzT3LGyd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1pt">Short-term trade accounts receivable</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1pt solid; width: 16%; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableGrossCurrent" contextRef="AsOf2026-06-30" id="Fact000949" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">292,134</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1pt solid; width: 16%; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableGrossCurrent" contextRef="AsOf2025-12-31" id="Fact000950" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">243,768</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iNI_pn3n3_di_msARNCzXOy_zYbgDK9d8rrh" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: Allowance for credit losses</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="AsOf2026-06-30" id="Fact000952" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,668</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="AsOf2025-12-31" id="Fact000953" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,320</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--AccountsReceivableNetCurrent_iI_pn3n3_maARNzS1d_mtARNCzXOy_zHLWhw1T7gTa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total short-term trade accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2026-06-30" id="Fact000955" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">287,466</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2025-12-31" id="Fact000956" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">239,448</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--AccountsReceivableNetNoncurrent_iI_pn3n3_maARNzS1d_z2SOL2Ji4Ujf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Long term trade accounts</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetNoncurrent" contextRef="AsOf2026-06-30" id="Fact000958" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,887</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetNoncurrent" contextRef="AsOf2025-12-31" id="Fact000959" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,730</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AccountsReceivableNet_iTI_pn3n3_mtARNzS1d_zaCGkQorRvH7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt">Total trade accounts receivable</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2026-06-30" id="Fact000961" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">289,353</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2025-12-31" id="Fact000962" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">241,178</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000964" name="TGLS:ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock"><p id="xdx_897_ecustom--ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_zuSlLAAmYblb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes in the allowance for credit losses for the six months ended June 30, 2026, are:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_zNTpXnNhc3ca" style="display: none">Schedule of Changes in Allowance for Doubtful Accounts Receivable</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_490_20260101__20260630_z06WByG6mhqa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months&#160;ended<br/> June 30,
    2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iS_pn3n3_zUzZfrsMmKpc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 75%">Balance at beginning of period</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 21%; text-align: right"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="AsOf2025-12-31" id="Fact000966" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,320</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--ProvisionForDoubtfulAccounts_pn3n3_zF6EvfGDASv6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Provisions for credit losses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2026-01-01to2026-06-30" id="Fact000968" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,322</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--AllowanceForDoubtfulAccountsReceivableWriteOffs_iN_pn3n3_di_zLWFDfPsf2V1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Deductions and write-offs, net of foreign currency adjustment</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" contextRef="From2026-01-01to2026-06-30" id="Fact000970" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">974</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iE_pn3n3_zfOE7D8BUJd9" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance at end of period</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="AsOf2026-06-30" id="Fact000972" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,668</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract
assets represent accumulated incurred costs and earned profits on contracts with customers that have been recorded as sales but have
not been billed to customers and are classified as current. In addition, a portion of the amounts billed on certain fixed price contracts
that are withheld by the customer as a retainage until a final good receipt of the complete project to the customers satisfaction. Contract
liabilities consist of advance payments and billings in excess of costs incurred and deferred revenue, and represent amounts received
in excess of sales recognized on contracts. The Company classifies advance payments and billings in excess of costs incurred as current,
and deferred revenue as current or non-current based on the expected timing of sales recognition. Contract assets and contract liabilities
are determined on a contract-by-contract basis at the end of each reporting period. The non-current portion of contract liabilities is
included in long-term liabilities in the Company&#8217;s condensed consolidated balance sheets.</span></p>

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

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

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

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact000974" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock"><p id="xdx_89C_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zZeip9VBkFt2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below presents the components of net contract assets (liabilities):</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zVPZPUl2E1f1" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zZ8ERCuI3CU7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zf8Edftfkl0j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_maNCLAzcHD_zAoEhWnXvHgb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Contract assets &#8212; current</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="AsOf2026-06-30" id="Fact000976" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">29,701</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="AsOf2025-12-31" id="Fact000977" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">31,809</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_maNCLAzcHD_z96nqdKFt8wi" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract assets &#8212; non-current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" contextRef="AsOf2026-06-30" id="Fact000979" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">28,414</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" contextRef="AsOf2025-12-31" id="Fact000980" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">20,506</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerLiabilityCurrent_iNI_pn3n3_di_msNCLAzcHD_zUMZTTxkYmN" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Contract liabilities &#8212; current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2026-06-30" id="Fact000982" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">173,825</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2025-12-31" id="Fact000983" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">149,442</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iNI_pn3n3_di_msNCLAzcHD_z7ljzYOSQgU4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract liabilities &#8212; non-current</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="AsOf2026-06-30" id="Fact000985" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,045</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="AsOf2025-12-31" id="Fact000986" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,988</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_402_ecustom--NetContractLiabilitiesAssets_iTI_pn3n3_mtNCLAzcHD_zD8p6lZuEsQ6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net contract liability</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="TGLS:NetContractLiabilitiesAssets" contextRef="AsOf2026-06-30" id="Fact000988" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">116,755</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(<ix:nonFraction name="TGLS:NetContractLiabilitiesAssets" contextRef="AsOf2025-12-31" id="Fact000989" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">99,115</ix:nonFraction></td><td style="font-weight: bold; text-align: left">)</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2026-01-012026-06-30_custom_ContractAssetsMember" escape="true" id="Fact000991" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock"><p id="xdx_891_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractAssetsMember_zhQ7MUHsYUbl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of contract assets are presented in the table below:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_z8kWXE9QDAok" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zoUBiGy3HgLi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zgcXC8WjluF7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--UnbilledReceivablesCurrent_iI_pn3n3_maCWCAGz5IH_zrD2TyXex3qh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Unbilled contract receivables, gross</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:UnbilledReceivablesCurrent" contextRef="AsOf2026-06-30" id="Fact000993" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,421</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:UnbilledReceivablesCurrent" contextRef="AsOf2025-12-31" id="Fact000994" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">9,084</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--ConstructionContractorReceivableRetainage_iI_pn3n3_maCWCAGz5IH_zy3ea9V6YIC" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">Retainage</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ConstructionContractorReceivableRetainage" contextRef="AsOf2026-06-30" id="Fact000996" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">51,694</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ConstructionContractorReceivableRetainage" contextRef="AsOf2025-12-31" id="Fact000997" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">43,231</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ContractWithCustomerAssetGrossCurrent_iTI_pn3n3_mtCWCAGz5IH_zcJ9weFsqgol" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Total contract assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetGrossCurrent" contextRef="AsOf2026-06-30" id="Fact000999" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">58,115</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetGrossCurrent" contextRef="AsOf2025-12-31" id="Fact001000" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">52,315</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_ziQ2lf9forwa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: current portion</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="AsOf2026-06-30" id="Fact001002" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">29,701</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="AsOf2025-12-31" id="Fact001003" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">31,809</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_zoSiol6Aq68g" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Contract Assets &#8211; non-current</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" contextRef="AsOf2026-06-30" id="Fact001005" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">28,414</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" contextRef="AsOf2025-12-31" id="Fact001006" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">20,506</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2026-01-012026-06-30_custom_ContractLiabilitiesMember" escape="true" id="Fact001008" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock"><p id="xdx_89E_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractLiabilitiesMember_zFpKlaO5PLok" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of contract liabilities are presented in the table below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zGUCqnDUtWIj" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_ziRGyuM3YwEh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zO6Dg5g3EsGh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_401_ecustom--BillingsInExcessOfCosts_iI_pn3n3_zccOCan23m5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Billings in excess of costs</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="TGLS:BillingsInExcessOfCosts" contextRef="AsOf2026-06-30" id="Fact001010" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">122,407</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="TGLS:BillingsInExcessOfCosts" contextRef="AsOf2025-12-31" id="Fact001011" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">104,376</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms_iI_pn3n3_zNkZz0xWejM3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Advances from customers on uncompleted contracts</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" contextRef="AsOf2026-06-30" id="Fact001013" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">52,463</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" contextRef="AsOf2025-12-31" id="Fact001014" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">47,054</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ContractWithCustomerLiability_iTI_pn3n3_zQyaKNqiIDWj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Total contract liabilities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" contextRef="AsOf2026-06-30" id="Fact001016" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">174,780</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" contextRef="AsOf2025-12-31" id="Fact001017" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">151,430</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--ContractWithCustomerLiabilityCurrent_iI_pn3n3_zWF9p2jHZEre" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: current portion</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2026-06-30" id="Fact001019" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">173,825</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2025-12-31" id="Fact001020" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">149,442</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iI_pn3n3_z1ztisJRlDfb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Contract liabilities &#8211; non-current</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="AsOf2026-06-30" id="Fact001022" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,045</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" contextRef="AsOf2025-12-31" id="Fact001023" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,988</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three and six months ended June 30, 2026, the Company recognized $<span id="xdx_900_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20260401__20260630_zI9G6FvPrwZ1" title="Sales related to contract liabilities"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="From2026-04-012026-06-30" id="Fact001025" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">11,336</ix:nonFraction></span> and $<span id="xdx_902_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20260101__20260630_zcl9ysheQ3S9" title="Sales related to contract liabilities"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="From2026-01-01to2026-06-30" id="Fact001027" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">23,274</ix:nonFraction></span> of sales related to its contract liabilities
on January 1, 2026, respectively. During the three and six months ended June 30, 2025, the Company recognized $<span id="xdx_90B_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20250401__20250630_zcvbQQxfw6Nh" title="Sales related to contract liabilities"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="From2025-04-012025-06-30" id="Fact001029" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,314</ix:nonFraction></span> and $<span id="xdx_900_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20250101__20250630_zyRgxscuehBc" title="Sales related to contract liabilities"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="From2025-01-012025-06-30" id="Fact001031" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">16,858</ix:nonFraction></span> of
sales related to its contract liabilities on January 1, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the Company had $<span id="xdx_900_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20260630_z09KrEvpFav3" title="Remaining performance obligation"><ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" contextRef="AsOf2026-06-30" id="Fact001033" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">884.2</ix:nonFraction></span> million of remaining performance obligations, which represents the transaction price of firm
orders minus sales recognized from inception to date. Remaining performance obligations exclude unexercised contract options, verbal
commitments, Letters of Intent or written mandates, and potential orders under basic ordering agreements. The Company expects to recognize
<span id="xdx_90D_eus-gaap--RevenueRemainingPerformanceObligationPercentage_iI_pid_dp_uPure_c20260630_zkIEiDjCH2y7" title="Performance obligation, percentage"><ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligationPercentage" contextRef="AsOf2026-06-30" id="Fact001035" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">100</ix:nonFraction></span>% of sales relating to existing performance obligations within three years, of which $<span id="xdx_90D_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20261231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zVCeEYDvPNxk" title="Remaining performance obligation"><ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" contextRef="AsOf2026-12-31_srt_ScenarioForecastMember" id="Fact001037" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">309.2</ix:nonFraction></span> million are expected to be recognized
during the year ending December 31, 2026, $<span id="xdx_902_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20271231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zMDAZjQXKJ1i" title="Remaining performance obligation"><ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" contextRef="AsOf2027-12-31_srt_ScenarioForecastMember" id="Fact001039" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">409.8</ix:nonFraction></span> million during the year ending December 31, 2027, and $<span id="xdx_90B_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20281231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zSu7Le6sE2K7" title="Remaining performance obligation"><ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" contextRef="AsOf2028-12-31_srt_ScenarioForecastMember" id="Fact001041" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">165.2</ix:nonFraction></span> million during the year
ending December 31, 2028.</span></p>

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

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

<ix:exclude><!-- Field: Page; Sequence: 11; Value: 2 -->
    <div style="border-bottom: Black 1pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->11<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>
<!-- Field: Split-Segment; Name: 001 -->
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001043" name="us-gaap:IntangibleAssetsDisclosureTextBlock"><p id="xdx_80C_eus-gaap--IntangibleAssetsDisclosureTextBlock_zZHm4LIRVTue" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
6. <span id="xdx_82B_zPh5XTaFUJWb">Intangible Assets and Goodwill</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets include Miami-Dade County Notices of Acceptances (NOA&#8217;s), which are certificates issued for approved products and required
to market hurricane-resistant glass in Florida. Intangibles assets also include the intangibles acquired during the acquisition of Continental.</span></p>

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001045" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"><p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zJEtlT6afeGg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zgPqPWQP47U6" style="display: none">Schedule
of Finite-Lived Intangible Assets, Net</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30, 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Gross</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Acc. Amort.</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Net</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Trade Names</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z3l7t0AkAre4" title="Finite-Lived Intangible Assets, Gross" style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2026-06-30_us-gaap_TradeNamesMember" id="Fact001047" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">170</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z03FerkIl98a" title="Accumulated Amortization" style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2026-06-30_us-gaap_TradeNamesMember" id="Fact001049" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">50</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zKown4y1hhFl" title="Intangible assets, net" style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2026-06-30_us-gaap_TradeNamesMember" id="Fact001051" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">120</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Software and licenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zVU9uK6uFXdc" title="Finite-Lived Intangible Assets, Gross" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2026-06-30_custom_SoftwareAndLicensesMember" id="Fact001053" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">20,171</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zCyRpRBlTM1a" title="Accumulated Amortization" style="text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2026-06-30_custom_SoftwareAndLicensesMember" id="Fact001055" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">11,326</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z1UjXtWGHmJ3" title="Intangible assets, net" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2026-06-30_custom_SoftwareAndLicensesMember" id="Fact001057" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,845</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptances (NOAs), product designs and other intellectual property</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zMKzdVlqBoic" title="Finite-Lived Intangible Assets, Gross" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" id="Fact001059" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,260</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zn4pRrSwNhxd" title="Accumulated Amortization" style="text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" id="Fact001061" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,826</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zppZY0Ycb2Gd" title="Intangible assets, net" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" id="Fact001063" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,434</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract Backlog</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_z6kxqXAHwYga" title="Finite-Lived Intangible Assets, Gross" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2026-06-30_custom_ContractBacklogMember" id="Fact001065" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">670</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_ztsOolILwJOc" title="Accumulated Amortization" style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2026-06-30_custom_ContractBacklogMember" id="Fact001067" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">261</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zMEzQmVhbGN2" title="Intangible assets, net" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2026-06-30_custom_ContractBacklogMember" id="Fact001069" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">409</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 1pt">Total</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630_zJocKqTQvUb3" title="Intangible assets, Gross" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2026-06-30" id="Fact001071" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">27,271</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630_z2fnNRIGFtE3" title="Intangible assets, Accumulated amortization" style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2026-06-30" id="Fact001073" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,463</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630_zgjVUUU7eLD3" title="Intangible assets, Net" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2026-06-30" id="Fact001075" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,808</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31, 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Gross</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Acc. Amort.</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Net</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Trade Names</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zxBdjQeM9fP7" title="Finite-Lived Intangible Assets, Gross" style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2025-12-31_us-gaap_TradeNamesMember" id="Fact001077" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">170</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zK0QQZjfwQW4" title="Accumulated Amortization" style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2025-12-31_us-gaap_TradeNamesMember" id="Fact001079" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">28</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zGmvYsyRWuv3" title="Intangible assets, net" style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2025-12-31_us-gaap_TradeNamesMember" id="Fact001081" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">142</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Software and licenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zWvOi1i7CdMe" title="Finite-Lived Intangible Assets, Gross" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2025-12-31_custom_SoftwareAndLicensesMember" id="Fact001083" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">17,217</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z7Qvkk0NnEqj" title="Accumulated Amortization" style="text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2025-12-31_custom_SoftwareAndLicensesMember" id="Fact001085" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,138</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zDl4omBQPRO8" title="Intangible assets, net" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2025-12-31_custom_SoftwareAndLicensesMember" id="Fact001087" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,079</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptances (NOAs), product designs and other intellectual property</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zzWE20t4BOuh" title="Finite-Lived Intangible Assets, Gross" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" id="Fact001089" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,260</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zemG0a6RpqJ8" title="Accumulated Amortization" style="text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" id="Fact001091" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,043</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zh664U8T6lyb" title="Intangible assets, net" style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" id="Fact001093" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,217</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract Backlog</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zebUkhamiKl4" title="Finite-Lived Intangible Assets, Gross" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2025-12-31_custom_ContractBacklogMember" id="Fact001095" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">670</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zmSON1bHG1w7" title="Accumulated Amortization" style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2025-12-31_custom_ContractBacklogMember" id="Fact001097" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">149</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zYXuNTS0kx5k" title="Intangible assets, net" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2025-12-31_custom_ContractBacklogMember" id="Fact001099" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">521</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 1pt">Total</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231_zPUY59nSLvfc" title="Intangible assets, Gross" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2025-12-31" id="Fact001101" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">24,317</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231_zoylhdMoerOe" title="Intangible assets, Accumulated amortization" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2025-12-31" id="Fact001103" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">11,358</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231_z0U6rPUqYo26" title="Intangible assets, Net" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2025-12-31" id="Fact001105" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">12,959</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
weighted average amortization period is <span id="xdx_90C_eus-gaap--AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_dtY_c20260101__20260630_z3kpxZEXVJ2" title="Weighted average amortization period"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" format="ixt-sec:duryear" id="Fact001107" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">2.9</ix:nonNumeric></span> years.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three and six months ended June 30, 2026, the amortization expense amounted to $<span id="xdx_904_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20260401__20260630_zLEeMVI87Ssb" title="Amortization expense"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2026-04-012026-06-30" id="Fact001109" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">974</ix:nonFraction></span> and $<span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20260101__20260630_z6Gy3gZ3BCs7" title="Amortization expense"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2026-01-01to2026-06-30" id="Fact001111" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1883</ix:nonFraction></span>, respectively, and was included within
the general and administration expenses in our unaudited Condensed Consolidated Statement of Operations. Similarly, during the three
and six ended June 30, 2025, the amortization expense amounted to $<span id="xdx_905_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20250401__20250630_z05FjjMLj6K4" title="Amortization expense"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2025-04-012025-06-30" id="Fact001113" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">645</ix:nonFraction></span> and $<span id="xdx_90F_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20250101__20250630_zo4ij6dVAhpj" title="Amortization expense"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" contextRef="From2025-01-012025-06-30" id="Fact001115" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">950</ix:nonFraction></span>, respectively.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001117" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"><p id="xdx_898_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zgsekQ8ROY1k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
estimated aggregate amortization expense for each of the five succeeding years as of June 30, 2026, is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B1_zYIzH0kotrj" style="display: none">Schedule
of Finite Lived Intangible Assets Future Amortization Expense</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Year ending December 31,</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_497_20260630_zcet4z2JRQJ4">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_iI_pn3n3_maFLIANz7hA_zxaJIsiZodok" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: center">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" contextRef="AsOf2026-06-30" id="Fact001119" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,079</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pn3n3_maFLIANz7hA_z64P5znWSvY3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="AsOf2026-06-30" id="Fact001121" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,706</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pn3n3_maFLIANz7hA_zz6fU66FWiza" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="AsOf2026-06-30" id="Fact001123" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,257</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pn3n3_maFLIANz7hA_zmD0V24KrTj5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="AsOf2026-06-30" id="Fact001125" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,890</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_iI_pn3n3_maFLIANz7hA_zQiFSNevhO6b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1pt">Thereafter</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="TGLS:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" contextRef="AsOf2026-06-30" id="Fact001127" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,876</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_pn3n3_mtFLIANz7hA_z7o5FlORlrd2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center; padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2026-06-30" id="Fact001129" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">13,808</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001131" name="us-gaap:SupplierFinanceProgramTextBlock"><p id="xdx_804_eus-gaap--SupplierFinanceProgramTextBlock_z5J5dKrUc4lk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
7. <span id="xdx_821_zQQ6hs0hhia3">Supplier Finance Program</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Tecnoglass
has established payment times to suppliers for the purchase of goods and services, which normally range between 30 and 60 days. In the
normal course of business, suppliers may require liquidity and manage, through third parties, the advanced payment of invoices. The Company
allows its suppliers the option to payments in advance of an invoice due date, through a third-party finance provider or intermediary,
with the purpose of allowing suppliers to obtain the required liquidity. For these purposes, suppliers present to Tecnoglass. the third-party
finance provider or intermediary with whom they will carry out the finance program and establish an agreement, through which the invoices
will be paid by the third-party finance provider or intermediary once Tecnoglass. has confirmed the invoices as valid. Once the Company
confirms the invoices are valid, the third-party finance provider or intermediary proceeds with the payment to the supplier. Subsequently,
Tecnoglass. pays the invoices for goods or services to the third-party finance provider or intermediary selected by the supplier. Payment
times do not vary from those initially agreed with the supplier, as stated in the invoices factored by the supplier (i.e. between 30
and 60 days). Pursuant to the supplier finance programs, the Company has not been required to pledge any assets as security nor to provide
any guarantee to third-party finance provider or intermediary.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the obligations outstanding related to the supplier finance program amounted to $<span id="xdx_907_eus-gaap--ProgramRightsObligationsCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember_zipgirXujzT5" title="Current liabilities"><ix:nonFraction name="us-gaap:ProgramRightsObligationsCurrent" contextRef="AsOf2026-06-30_custom_SupplierFinanceProgramMember" id="Fact001133" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">21,686</ix:nonFraction></span>, recorded as current liabilities,
in the following balance sheet lines: Trade accounts payable and accrued expenses $<span id="xdx_90D_eus-gaap--AccountsPayableAndAccruedLiabilitiesCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember_zw42jX6vHlE3" title="Trade accounts payable and accrued expenses"><ix:nonFraction name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" contextRef="AsOf2026-06-30_custom_SupplierFinanceProgramMember" id="Fact001135" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">21,000</ix:nonFraction></span> &amp; due to related parties $<span id="xdx_909_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z7FfVOjtfZFk" title="Due to related parties"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2026-06-30_custom_SupplierFinanceProgramMember_us-gaap_RelatedPartyMember" id="Fact001137" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">686</ix:nonFraction></span>.</span></p>

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

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

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

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001139" name="us-gaap:DebtDisclosureTextBlock"><p id="xdx_809_eus-gaap--DebtDisclosureTextBlock_zoPRihiHX3ae" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
8. <span id="xdx_821_z63VGBErlsp6">Debt</span></b></span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001141" name="us-gaap:ScheduleOfDebtTableTextBlock"><p id="xdx_89D_eus-gaap--ScheduleOfDebtTableTextBlock_zqroHGjSV2Zb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s debt is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zUAMA1IoEP13" style="display: none">Schedule
of Long Term Debt</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20260630_zBrwsD09L7C4" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2026</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20251231_zPCw4xNhWhLe" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2025</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LineOfCredit_iI_pn3n3_maDICAz25p_zfDvXXBSUxak" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Revolving lines of credit</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LineOfCredit" contextRef="AsOf2026-06-30" id="Fact001143" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">596</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LineOfCredit" contextRef="AsOf2025-12-31" id="Fact001144" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">387</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--FinanceLeaseDebt_iI_pn3n3_maDICAz25p_zQrd7r0fvOl7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Finance lease</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:FinanceLeaseDebt" contextRef="AsOf2026-06-30" id="Fact001146" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,941</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:FinanceLeaseDebt" contextRef="AsOf2025-12-31" id="Fact001147" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">41</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--OtherLongTermDebtCurrent_iI_pn3n3_maDICAz25p_zJSuht5VM5U4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other current debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherLongTermDebtCurrent" contextRef="AsOf2026-06-30" id="Fact001149" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,628</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1150">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--SeniorSecuredCreditFacility_iI_pn3n3_maDICAz25p_zFCpW5VmIm9f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Senior Secured Credit Facility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:SeniorSecuredCreditFacility" contextRef="AsOf2026-06-30" id="Fact001152" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">219,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="TGLS:SeniorSecuredCreditFacility" contextRef="AsOf2025-12-31" id="Fact001153" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">174,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredCostsCurrent_iNI_pn3n3_di_msDICAz25p_z7iX7LuTVuwf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Less: Deferred cost of financing</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredCostsCurrent" contextRef="AsOf2026-06-30" id="Fact001155" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,771</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredCostsCurrent" contextRef="AsOf2025-12-31" id="Fact001156" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,799</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--DebtInstrumentCarryingAmount_iTI_pn3n3_mtDICAz25p_zOpTgQg8J8o9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Total obligations under borrowing arrangements</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="AsOf2026-06-30" id="Fact001158" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">225,394</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:DebtInstrumentCarryingAmount" contextRef="AsOf2025-12-31" id="Fact001159" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">171,629</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebtCurrent_iI_pn3n3_zm5L7pvndEFk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Less: Current portion of long-term debt and other current borrowings</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="AsOf2026-06-30" id="Fact001161" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,156</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtCurrent" contextRef="AsOf2025-12-31" id="Fact001162" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">427</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zQxvtU6anWL3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Long-term debt</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2026-06-30" id="Fact001164" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">219,238</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2025-12-31" id="Fact001165" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">171,202</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
September 2025, the Company entered into a new Senior Secured Credit Facility, transitioning from a term loan and revolving facility
structure to a fully committed revolving facility structure which allowed the Company to (i) increase total committed borrowing capacity
from $<span id="xdx_901_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__srt--RangeAxis__srt--MinimumMember_zFNj7oG07T19" title="Line of credit facility, maximum borrowing capacity"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MinimumMember" id="Fact001167" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">150</ix:nonFraction></span> million to $<span id="xdx_90A_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__srt--RangeAxis__srt--MaximumMember_z1Fm7qfpNlIl" title="Line of credit facility, maximum borrowing capacity"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MaximumMember" id="Fact001169" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">500</ix:nonFraction></span> million, (ii) reduce borrowing costs by approximately 25 basis points, and (iii) <span id="xdx_905_eus-gaap--DebtInstrumentMaturityDateDescription_c20250901__20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zlUn6yBJ33xa" title="Extend initial maturity"><ix:nonNumeric contextRef="From2025-09-012025-09-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001171" name="us-gaap:DebtInstrumentMaturityDateDescription">extend the initial maturity
date by five years to December 2030</ix:nonNumeric></span>. Borrowings under the new facility bear interest at the Secured Overnight Financing Rate (SOFR) with
no floor, plus a spread of <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_dp_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_zk2GgA17kW03" title="Debt instrument interest rate effective percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" contextRef="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember" id="Fact001173" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.25</ix:nonFraction></span> % based on the Company&#8217;s net leverage ratio (previously <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_dp_c20240930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_zfKBge0laGYl" title="Debt instrument interest rate effective percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" contextRef="AsOf2024-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember" id="Fact001175" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.50</ix:nonFraction></span> % over SOFR). The effective interest
rate for the facility, including deferred issuance costs, is <span id="xdx_908_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_pid_dp_uPure_c20251231__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zrDjavuw3tAb" title="Debt instrument interest rate effective percentage"><ix:nonFraction name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" contextRef="AsOf2025-12-31_custom_SeniorSecuredCreditFacilityMember" id="Fact001177" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">6.98</ix:nonFraction></span> % as of December 31, 2025. The Company incurred total costs and fees
of $<span id="xdx_905_eus-gaap--PaymentsOfDebtIssuanceCosts_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zAzEIzI4kLK1" title="Cost and fees"><ix:nonFraction name="us-gaap:PaymentsOfDebtIssuanceCosts" contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001179" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,783</ix:nonFraction></span> in lender fees which were capitalized as deferred financing costs, and are presented as a deduction from the related debt liability.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
transaction was accounted for as a debt extinguishment under ASC 470-50. Accordingly, the prior term-loan and revolving credit facilities
were derecognized, and the new revolving facility was initially recognized at its principal amount, net of deferred financing costs.
As a result, the Company recognized a loss on extinguishment of debt of $<span id="xdx_905_eus-gaap--GainsLossesOnExtinguishmentOfDebt_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zy5Zu1Sf440a" title="Loss on extinguishment of debt"><ix:nonFraction name="us-gaap:GainsLossesOnExtinguishmentOfDebt" contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001181" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,354</ix:nonFraction></span>, representing $<span id="xdx_903_eus-gaap--WriteOffOfDeferredDebtIssuanceCost_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zs6wW6M2s9a4" title="Write-off of the remaining unamortized"><ix:nonFraction name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001183" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,302</ix:nonFraction></span> for the write-off of the remaining
unamortized deferred financing costs related to the prior term-loan and revolving credit facilities, and $<span id="xdx_909_ecustom--TerminationCosts_iI_pn3n3_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zF7DuvtkiV87" title="Termination costs"><ix:nonFraction name="TGLS:TerminationCosts" contextRef="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001185" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">52</ix:nonFraction></span> of termination costs associated
with closing the prior facility. Cash proceeds from the new facility and repayments of the extinguished debt are reflected within financing
activities in the condensed consolidated statements of cash flows. Of the $<span id="xdx_905_eus-gaap--LegalFees_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zLjtg91xWSXl" title="Cost and fees"><ix:nonFraction name="us-gaap:LegalFees" contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001187" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,783</ix:nonFraction></span> of total fees incurred, $<span id="xdx_903_ecustom--DeductedFromProceedsFromIssuanceOfDebt_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zHYfYbv2cW1h" title="Deducted from proceeds from debt"><ix:nonFraction name="TGLS:DeductedFromProceedsFromIssuanceOfDebt" contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001189" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,803</ix:nonFraction></span> were deducted from the
gross proceeds and presented net within &#8220;Proceeds from debt,&#8221; with the remaining $<span id="xdx_902_eus-gaap--DeferredFinanceCostsNoncurrentNet_iI_pn3n3_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zTlWJZtRLl6d" title="Deferred financing costs"><ix:nonFraction name="us-gaap:DeferredFinanceCostsNoncurrentNet" contextRef="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001191" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">980</ix:nonFraction></span> recorded as cash outflows classified
under &#8220;Deferred financing costs and debt issuance fees&#8221; within financing activities. During the six months ended June 30,
2026, the Company drew down $<span id="xdx_904_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zeXNosJs2Sue" title="Line of credit facility, maximum borrowing capacity"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001193" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">60</ix:nonFraction></span> million from its revolving credit facility and repaid $<span id="xdx_902_eus-gaap--RepaymentsOfDebt_pn6n6_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zE2Hcw7aljKj" title="Repayment of debt"><ix:nonFraction name="us-gaap:RepaymentsOfDebt" contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember" id="Fact001195" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">15</ix:nonFraction></span> million.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001197" name="TGLS:ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock"><p id="xdx_895_ecustom--ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_zSptocCGhae8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Interest
income (expense), net and deferred cost of financing is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_z8vdT2WE77Zk" style="display: none">Schedule
of Interest Income Expenses net and deferred cost</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260401__20260630_zcVHem3o8NPb" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20250401__20250630_zVXBRh38ofH2" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20260101__20260630_zlGnmU86udy2" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20250101__20250630_zUg2JWZ9t7n3" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Interest income (expense), net and deferred cost of financing:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InterestExpense_zaRt1R0lv1L7" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Interest expense</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2026-04-012026-06-30" id="Fact001199" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">3,429</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2025-04-012025-06-30" id="Fact001200" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">1,078</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2026-01-01to2026-06-30" id="Fact001201" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">5,957</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:InterestExpense" contextRef="From2025-01-012025-06-30" id="Fact001202" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">2,126</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td></tr>
  <tr id="xdx_405_ecustom--DeferredCostsOfFinancing_pn3n3_zFvOzCfn0f13" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred cost of financing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:DeferredCostsOfFinancing" contextRef="From2026-04-012026-06-30" id="Fact001204" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">155</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:DeferredCostsOfFinancing" contextRef="From2025-04-012025-06-30" id="Fact001205" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">272</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:DeferredCostsOfFinancing" contextRef="From2026-01-01to2026-06-30" id="Fact001206" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">307</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="TGLS:DeferredCostsOfFinancing" contextRef="From2025-01-012025-06-30" id="Fact001207" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">555</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40B_ecustom--DerivativeFinancialInstrumentGain_pn3n3_zUtkCx1oGbkb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Derivative financial instrument loss</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="TGLS:DerivativeFinancialInstrumentGain" contextRef="From2026-04-012026-06-30" id="Fact001209" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">64</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1210">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="TGLS:DerivativeFinancialInstrumentGain" contextRef="From2026-01-01to2026-06-30" id="Fact001211" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">279</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1212">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--InterestIncomeExpenseNetAndDeferredCostOfFinancing_pn3n3_zCyfhwPssEu" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Interest expense, net and deferred cost of financing:</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing" contextRef="From2026-04-012026-06-30" id="Fact001214" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">3,520</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing" contextRef="From2025-04-012025-06-30" id="Fact001215" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">1,350</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing" contextRef="From2026-01-01to2026-06-30" id="Fact001216" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">6,543</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing" contextRef="From2025-01-012025-06-30" id="Fact001217" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">2,681</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001219" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"><p id="xdx_89B_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zzUeOdw9MFh3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Maturities
of long-term debt and other current borrowings as of June 30, 2026, are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B6_zsvW6Jt2HlAf" style="display: none">Schedule
of Maturities of Long Term Debt</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_493_20260630_zXarcZsz5imh" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pn3n3_maLTDz5iw_z6Anyjgfa8O5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: center">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" contextRef="AsOf2026-06-30" id="Fact001221" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,156</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pn3n3_maLTDz5iw_z4XZ9VHLuvvj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" contextRef="AsOf2026-06-30" id="Fact001223" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">953</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pn3n3_maLTDz5iw_zpE5uMoL9Eel" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" contextRef="AsOf2026-06-30" id="Fact001225" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">848</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pn3n3_maLTDz5iw_zHpXBDOYxhJe" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" contextRef="AsOf2026-06-30" id="Fact001227" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">769</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_iI_pn3n3_maLTDz5iw_zyZ6FV50IIZh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1pt">2030</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" contextRef="AsOf2026-06-30" id="Fact001229" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">219,439</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebt_iTI_pn3n3_mtLTDz5iw_zEgtsOiRKiQd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center; padding-bottom: 2.5pt">Total</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebt" contextRef="AsOf2026-06-30" id="Fact001231" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">228,165</ix:nonFraction></td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s loans have maturities ranging from <span id="xdx_902_eus-gaap--DebtInstrumentMaturityDateDescription_c20260101__20260630_zfkJnw2DL4K3" title="Loan maturity period description"><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" id="Fact001233" name="us-gaap:DebtInstrumentMaturityDateDescription">several weeks to 5 years</ix:nonNumeric></span>. Our credit facilities bore a weighted average interest rate
of <span id="xdx_903_eus-gaap--DebtWeightedAverageInterestRate_iI_pid_dp_uPure_c20260630_zRnBefXa0Ol6" title="Debt, weighted average interest rate"><ix:nonFraction name="us-gaap:DebtWeightedAverageInterestRate" contextRef="AsOf2026-06-30" id="Fact001235" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">5.14</ix:nonFraction></span>% as of June 30, 2026.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the Company had right-of-use assets (&#8220;ROU assets&#8221;) of $<span id="xdx_90A_eus-gaap--FinanceLeaseRightOfUseAsset_iI_pn3n3_c20260630_zh1lPIhz4Mch" title="Right-of-use assets"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAsset" contextRef="AsOf2026-06-30" id="Fact001237" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,905</ix:nonFraction></span> included within Property, Plant and Equipment,
and lease liabilities of $<span id="xdx_903_ecustom--FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_iI_pn3n3_c20260630_zNlJqJBlATMh" title="Finance lease right of use asset included property, plant and equipment, and lease liabilities"><ix:nonFraction name="TGLS:FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" contextRef="AsOf2026-06-30" id="Fact001239" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,941</ix:nonFraction></span> on its Condensed Consolidated Balance Sheet, of which $<span id="xdx_902_ecustom--FinanceLeaseShortTermDebt_iI_pn3n3_c20260630_zKT5wAdzY0k" title="Finance lease, short-term debt"><ix:nonFraction name="TGLS:FinanceLeaseShortTermDebt" contextRef="AsOf2026-06-30" id="Fact001241" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">932</ix:nonFraction></span> is presented within short-term debt and current
portion of long-term debt and $<span id="xdx_906_ecustom--FinanceLeaseLongTermDebt_iI_pn3n3_c20260630_zJyaXfJHMO3l" title="Finance lease, long-term debt"><ix:nonFraction name="TGLS:FinanceLeaseLongTermDebt" contextRef="AsOf2026-06-30" id="Fact001243" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,009</ix:nonFraction> </span>is classified as long-term debt. These leases primarily relate to real estate, including showrooms,
office space and industrial warehouses, as well as computing equipment. Certain lease agreements include options to extend the lease
term; however, the Company does not consider these options reasonably certain of exercise.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes amortization of ROU assets and interest expense on lease liabilities in its Condensed Consolidated Statements of Income.
During the three and six months ended June 30, 2026, the Company recorded ROU asset amortization of $<span id="xdx_90A_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_pn3n3_c20260401__20260630_zKizE0iXHTD1" title="ROU asset amortization"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" contextRef="From2026-04-012026-06-30" id="Fact001245" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">306</ix:nonFraction></span>, and $<span id="xdx_905_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_pn3n3_c20260101__20260630_zOEROls5Mvte" title="ROU asset amortization"><ix:nonFraction name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" contextRef="From2026-01-01to2026-06-30" id="Fact001247" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">564</ix:nonFraction></span>, respectively; and
interest expense of $<span id="xdx_902_eus-gaap--FinanceLeaseInterestExpense_pn3n3_c20260401__20260630_zn9koH9xWrud" title="Interest expense"><ix:nonFraction name="us-gaap:FinanceLeaseInterestExpense" contextRef="From2026-04-012026-06-30" id="Fact001249" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">43</ix:nonFraction></span>, and $<span id="xdx_909_eus-gaap--FinanceLeaseInterestExpense_pn3n3_c20260101__20260630_z1A4OwQ3t881" title="Interest expense"><ix:nonFraction name="us-gaap:FinanceLeaseInterestExpense" contextRef="From2026-01-01to2026-06-30" id="Fact001251" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">68</ix:nonFraction></span>, respectively.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cash
paid for amounts included in the measurement of lease liabilities was $<span id="xdx_903_eus-gaap--FinanceLeasePrincipalPayments_pn3n3_c20260101__20260630_zeBJqx4e7xE7" title="Cash paid for amounts included in the measurement of lease liabilities"><ix:nonFraction name="us-gaap:FinanceLeasePrincipalPayments" contextRef="From2026-01-01to2026-06-30" id="Fact001253" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">702</ix:nonFraction> </span>for the six months ended June 30, 2026, consisting of $<span id="xdx_90D_ecustom--FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_pn3n3_c20260101__20260630_zUuKCnNcL7F1" title="Cash paid for amounts included in measurement of lease liabilities classified as operating cash flows"><ix:nonFraction name="TGLS:FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" contextRef="From2026-01-01to2026-06-30" id="Fact001255" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">68</ix:nonFraction></span>
classified as operating cash flows and $<span id="xdx_906_ecustom--FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_pn3n3_c20260101__20260630_zIOY0tDtUQIf" title="Cash paid for amounts included in measurement of lease liabilities classified as financing cash flows"><ix:nonFraction name="TGLS:FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" contextRef="From2026-01-01to2026-06-30" id="Fact001257" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">634</ix:nonFraction></span> classified as financing cash flows. Non-cash additions to ROU assets in exchange for lease
liabilities were $<span id="xdx_906_ecustom--NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_iI_pn3n3_c20260630_zWDqc8WB5JX1" title="Non-cash additions to ROU assets in exchange for lease liabilities"><ix:nonFraction name="TGLS:NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" contextRef="AsOf2026-06-30" id="Fact001259" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,073</ix:nonFraction></span> during the period.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001261" name="us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock"><p id="xdx_899_eus-gaap--FinanceLeaseLiabilityMaturityTableTextBlock_z7a8ivTHQip" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Future
minimum lease payments for the years ended June 30, of each year are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zKECQKN054Oh" style="display: none">Schedule of Future Minimum Lease Payments</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_49B_20260630_zQQZ7DEYBikh" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pn3n3_zWBhkFopt9g2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" contextRef="AsOf2026-06-30" id="Fact001263" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,078</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearTwo_iI_pn3n3_zhrEp3LZ9gv7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo" contextRef="AsOf2026-06-30" id="Fact001265" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,060</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearThree_iI_pn3n3_z6tmBx8N7AVj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree" contextRef="AsOf2026-06-30" id="Fact001267" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">917</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearFour_iI_pn3n3_z3Gl9HXjabKl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour" contextRef="AsOf2026-06-30" id="Fact001269" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">804</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--FinanceLeaseLiabilityPaymentsDueAfterYearFour_iI_pn3n3_zjJajX02UxC9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">2030 and thereafter</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="TGLS:FinanceLeaseLiabilityPaymentsDueAfterYearFour" contextRef="AsOf2026-06-30" id="Fact001271" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">446</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--FinanceLeaseLiabilityPaymentsDue_iTI_pn3n3_z4SBllCmOa59" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Total undiscounted cashflows</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityPaymentsDue" contextRef="AsOf2026-06-30" id="Fact001273" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,304</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--FinanceLeaseLiabilityUndiscountedExcessAmount_iI_pn3n3_z2VnQPwvzcpa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Less: Imputed Interest</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" contextRef="AsOf2026-06-30" id="Fact001275" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">363</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--FinanceLeaseLiability_iTI_pn3n3_zcb1X4lTuAq3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Present value of lease liability</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:FinanceLeaseLiability" contextRef="AsOf2026-06-30" id="Fact001277" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,941</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the weighted-average remaining lease term for finance leases was <span id="xdx_901_eus-gaap--FinanceLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20260630_z1EaGXWZYQhc" title="Weighted-average remaining lease term"><ix:nonNumeric contextRef="AsOf2026-06-30" format="ixt-sec:duryear" id="Fact001279" name="us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1">4.1</ix:nonNumeric></span> years and the weighted-average discount rate was
<span id="xdx_908_eus-gaap--FinanceLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20260630_zxxUrJ0AVp08" title="Weighted-average discount rate"><ix:nonFraction name="us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent" contextRef="AsOf2026-06-30" id="Fact001281" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.2</ix:nonFraction></span>%.</span></p>

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

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

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

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001283" name="us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock"><p id="xdx_800_eus-gaap--DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_zjoBOi5NM3k4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
9. <span id="xdx_823_zIn8aovPMp7d">Derivative Financial Instruments and Fair Value Measurements</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the quarter ended June 30, 2022, we entered into several interest rate swap contracts to hedge the interest rate fluctuations related
to our outstanding debt. The effective date of the contract is December 31, 2022 and, as a result, the Company has payment dates each
quarter, commencing June 30 2023. During the quarter ended December 31, 2024, we entered into several foreign currency non-delivery option
contracts to hedge the fluctuations in the exchange rate between the Colombian Peso and the U.S. Dollar. Our contracts are designated
as cash flow hedges since they are highly effective in offsetting changes in the cash flows attributable to forecasted LIBOR and Colombian
Peso denominated costs and expenses, respectively.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
record our hedge contracts at fair value and consider our credit risk for contracts in a liability position, and our counter-party&#8217;s
credit risk for contracts in an asset position, in determining fair value. We assess our counter-party&#8217;s risk of non-performance
when measuring the fair value of financial instruments in an asset position by evaluating their financial position, including cash on
hand, as well as their credit ratings.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Due
to the Libor discontinuation, on June 21, 2023, the Company amended the Interest Rate Swap contract from Libor 1 Month plus spread to
SOFR 3 Months plus spread. The settlements of the instruments remain under the existing conditions; however, the fixed leg goes from
<span id="xdx_904_eus-gaap--DerivativeFixedInterestRate_iI_dp_uPure_c20230621__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember__srt--RangeAxis__srt--MaximumMember_zAdjXAhK6t49" title="Derivative fixed interest rate"><ix:nonFraction name="us-gaap:DerivativeFixedInterestRate" contextRef="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MaximumMember" id="Fact001285" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.93</ix:nonFraction></span>% to <span id="xdx_905_eus-gaap--DerivativeFixedInterestRate_iI_dp_uPure_c20230621__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember__srt--RangeAxis__srt--MinimumMember_zh3LyJZarQnl" title="Derivative fixed interest rate"><ix:nonFraction name="us-gaap:DerivativeFixedInterestRate" contextRef="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MinimumMember" id="Fact001287" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.87</ix:nonFraction></span>%. Regarding the conditions of our outstanding debt, only Libor was replaced by SOFR, maintaining the other initial conditions.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
September 04, 2025 Tecnoglass amended its senior secured revolving credit facility to (i) increase the borrowing capacity under its committed
Line of credit from $<span id="xdx_900_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250903__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zYO5fWSfc3Pk" title="Line of credit"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2025-09-03_custom_SeniorSecuredCreditFacilityMember" id="Fact001289" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">150</ix:nonFraction></span> million to $<span id="xdx_906_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zq1pqq15OyI3" title="Line of credit facility, maximum borrowing capacity"><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="AsOf2025-09-04_custom_SeniorSecuredCreditFacilityMember" id="Fact001291" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">500</ix:nonFraction></span> million, (ii) reduce its borrowing costs by an approximate 25 basis points, and (iii) <span id="xdx_901_eus-gaap--DebtInstrumentMaturityDateDescription_c20250904__20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_z2Mw5b2IDxoe" title="Loan maturity period description"><ix:nonNumeric contextRef="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember" id="Fact001293" name="us-gaap:DebtInstrumentMaturityDateDescription">extend
the initial maturity date by five years to the end of 2030</ix:nonNumeric></span>. Borrowings under the credit facility will now bear interest at the Secured
Overnight Financing Rate (SOFR) with no floor plus a spread of <span id="xdx_90A_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20250904__20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_z8492OoiUzH8" title="Debt instrument basis spread on variable rate"><ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember" id="Fact001295" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.25</ix:nonFraction></span>%, based on the Company&#8217;s net leverage ratio, compared to a
prior spread of <span id="xdx_905_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20240904__20240904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_za5Y1yTQOOI5" title="Debt instrument basis spread on variable rate"><ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" contextRef="From2024-09-042024-09-04_custom_SeniorSecuredCreditFacilityMember" id="Fact001297" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.50</ix:nonFraction></span>%. The facility was led by Wells Fargo Bank N.A. as Administrative Agent; with BMO Bank N.A, Citibank N.A, Citizens
Bank N.A, First Citizens Bank &amp; Trust Company and J.P. Morgan Chase Bank N.A, as Joint Lead Arrangers.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the fair value of the Company&#8217;s interest rate swap and foreign currency non-delivery option contracts was in
a net asset position of $<span id="xdx_904_eus-gaap--DerivativeAssets_iI_pn5n6_c20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zeKSC7Zhkyn3" title="Derivative assets"><ix:nonFraction name="us-gaap:DerivativeAssets" contextRef="AsOf2026-06-30_us-gaap_InterestRateSwapMember" id="Fact001299" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">1.0</ix:nonFraction></span> million. We had 2 outstanding interest rate swap contracts of $<span id="xdx_909_eus-gaap--InterestEarningAssetsAverageAmountOutstanding_pn6n6_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zMxXpOoSopJk" title="Interest earning assets average outstanding"><ix:nonFraction name="us-gaap:InterestEarningAssetsAverageAmountOutstanding" contextRef="From2026-01-012026-06-30_us-gaap_InterestRateSwapMember" id="Fact001301" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">110</ix:nonFraction></span> million through November 2026 as an economic
hedge and 8 non-delivery option contracts to exchange $<span id="xdx_901_eus-gaap--LongTermDebtAverageAmountOutstanding_pn6n6_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zaDUzMrl2mp2" title="Debt outstanding amount"><ix:nonFraction name="us-gaap:LongTermDebtAverageAmountOutstanding" contextRef="From2026-01-012026-06-30_us-gaap_InterestRateSwapMember" id="Fact001303" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">60</ix:nonFraction></span> million U.S. Dollars to Colombian Pesos through December 2026.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the second quarter of 2026, the Company did not assess the effectiveness of foreign currency non-delivery option contracts due to the
contracts the Company entered into on May 5, 2026 which did not qualify for hedge accounting and were not designated as hedging instruments.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Because
of the discontinuation of the hedge accounting for the interest rate swap in the third quarter of 2025, the Company did not assess the
effectiveness of this instrument.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
gain or loss on the Company&#8217;s foreign currency non-delivery option contracts are reported as a component of the earnings. The change
in the fair value of the interest rate swap designated as an economic hedge will be included in earnings at the moment of its valuation.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30,2026, there are no gains or losses, net, recognized in the &#8220;accumulated other comprehensive income&#8221; for non-delivery
option and interest rate swap contracts.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001305" name="TGLS:ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock"><p id="xdx_89C_ecustom--ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_zqUc5XMzJdkl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of interest rate swap and foreign currency non-delivery option hedges is classified in the accompanying consolidated balance
sheets, as of June 30, 2026, as follows:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B9_zNSlVFjDWRva" style="display: none">Schedule
of Fair Value of Foreign Currency Hedges</span></span></span></span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font: bold 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Derivative Assets</span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Derivative
Liabilities</span></td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Derivatives financial instruments</b></span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30, 2026</b></span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><p style="margin-top: 0; margin-bottom: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June
30, 2026</b></span></p>

</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">under&#8239;Subtopic 815-20:</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Balance&#8239;Sheet&#8239;<br/>
 Location</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Balance&#8239;Sheet&#8239;<br/>
 Location</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Derivative instruments:</td><td>&#160;</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="border-left: Black 1pt solid">&#160;</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; width: 30%; text-align: left">Interest Rate Swap Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 18%; text-align: left">Other current assets</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zaUmP6QpA11j" title="Total derivative assets" style="width: 11%; text-align: right"><ix:nonFraction name="us-gaap:DerivativeInstrumentsAndHedges" contextRef="AsOf2026-06-30_custom_InterestRateSwapContractsMember_custom_OtherCurrentAssetMember" id="Fact001307" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">787</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; width: 2%">&#160;</td>
    <td style="width: 18%; text-align: left">Accrued liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 11%; text-align: right"><span id="xdx_90E_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zlRListcWqT5" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1309">-</span></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 10pt; text-align: left">foreign currency non-delivery forwards</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zVGZT5gRNRGl" title="Total derivative assets" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:DerivativeInstrumentsAndHedges" contextRef="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_custom_OtherCurrentAssetMember" id="Fact001311" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">232</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span id="xdx_90B_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zQiA7h2b85ec" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1313">-</span></span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; padding-left: 20pt; text-align: left">Total derivative instruments</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">Total derivative assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630_ze5nsOc59g97" title="Total derivative assets" style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:DerivativeInstrumentsAndHedges" contextRef="AsOf2026-06-30" id="Fact001315" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,019</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">Total derivative liabilities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><span id="xdx_907_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630_zGiNFFfYWONk" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1317">-</span></span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table>


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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
ending accumulated balance for foreign currency non-delivery option contracts included in earnings, net of tax, was $<span id="xdx_905_eus-gaap--AccumulatedOtherComprehensiveIncomeLossNetOfTax_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_z4WLmCdHIcP4" title="Accumulated other comprehensive income net of tax"><ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="AsOf2026-06-30_us-gaap_InterestRateSwapMember" id="Fact001319" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">232</ix:nonFraction></span> as of June 30,2026,
comprised of a derivative gain of $<span id="xdx_904_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember_zhfdOFuVIr51" title="Accumulated other comprehensive income net of tax"><ix:nonFraction name="us-gaap:DerivativeInstrumentsAndHedges" contextRef="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember" id="Fact001321" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">232</ix:nonFraction></span>. No deferred income tax was calculated because the amounts accrued as of June 30, 2026 are the
same as the compensation received.</span></p>

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

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

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

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001323" name="us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock"><p id="xdx_890_eus-gaap--ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_zCFaUDcykf2h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents the gains (losses) on derivative financial instruments, and their classifications within the accompanying consolidated
financial statements, for the three months ended June 30, 2026, and 2025:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;&#160;<span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zdzfpWTf99e9" style="display: none">Schedule
of Gains (Losses) on Derivative Financial Instruments quarter ended</span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives in Cash Flow Hedging Relationships</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss)</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Location of Gain or (Loss) Reclassified from Accumulated</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss) Reclassified from</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Recognized in earnings on</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">OCI (Loss) into</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">OCI (Loss) into Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 30%; text-align: left">Interest Rate Swap and foreign currency non-delivery forwards Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zP5nOAyQKBzd" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2026-04-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" id="Fact001325" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,808</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_983_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zlBcyxfrqqY2" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2025-04-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" id="Fact001327" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">748</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 20%; text-align: center">Interest income (expense), net and deferred cost of financing and operating revenues </td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zzGtsYyOiKU2" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1329">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zsyc1vE020Hh" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2025-04-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember" id="Fact001331" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,250</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives in Cash Flow Hedging Relationships</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss)</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Location of Gain or (Loss) Reclassified from Accumulated</td><td>&#160;</td>
    <td colspan="6" style="text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Amount of Gain or (Loss)</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Reclassified from</b></span></p></td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Recognized in earnings on</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">OCI (Loss) into</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Income</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">OCI (Loss) into Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 30%; text-align: left">Interest Rate Swap and foreign currency non-delivery forwards Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_981_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z9lP0eoyU03d" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2026-01-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" id="Fact001333" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,782</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z2iOOdpiIIUg" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2025-01-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" id="Fact001335" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">148</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 20%; text-align: center">Interest income (expense), net and deferred cost of financing and operating revenues</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zfi2A4MgNjqc" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1337">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_z58G94oUeftf" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives" style="width: 8%; text-align: right"><ix:nonFraction name="TGLS:DerivativeGainLossesOnDerivativeNet" contextRef="From2025-01-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember" id="Fact001339" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,242</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company accounts for financial assets and liabilities in accordance with accounting standards that define fair value and establish a
framework for measuring fair value. The hierarchy prioritizes the inputs into three broad levels. Level 1 inputs are quoted prices (unadjusted)
in active markets for identical assets or liabilities. Level 2 inputs are quoted prices for similar assets and liabilities in active
markets or inputs that are observable for the asset or liability, either directly or indirectly through market corroboration, for substantially
the full term of the financial instrument. Level 3 inputs are unobservable inputs based on the Company&#8217;s assumptions used to measure
assets and liabilities at fair value. A financial asset&#8217;s or liability&#8217;s classification within the hierarchy is determined
based on the lowest level input that is significant to the fair value measurement.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
carrying amounts of the Company&#8217;s financial instruments, including cash and cash equivalents, accounts receivable, accounts payable
and advances from customers approximate their fair value due to their relatively short-term maturities. The Company bases its fair value
estimate for long term debt obligations on its internal valuation that all debt is floating rate debt based on current interest rates
in Colombia.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of derivatives used to manage interest rate risks are based on SOFR rates and interest rate swap curves. Measurement of our
derivative assets and liabilities is considered a level 2 measurement. To carry out the swap valuation, the definition of the fixed leg
(obligation) and variable leg (right) is used. Once the projected flows are obtained in both fixed and variable rates, the regression
analysis is performed for prospective effectiveness test. The projection curve contains the forward interest rates to project flows at
a variable rate and the discount curve contains the interest rates to discount future flows, using the one-month USD Libor curve.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, financial instruments carried at amortized cost that do not approximate fair value consist of long-term debt. See Note
8 &#8211; Debt. The fair value of long-term debt was calculated based on an analysis of future cash flows discounted at current market
rates (which are level 2 inputs).</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001341" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock"><p id="xdx_894_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zLrtg6dUrum5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the fair value and carrying amounts of our long-term debt:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zEKGSrwYzX1f" style="display: none">Schedule
of Fair Value and Carrying Amounts of Long Term Debt</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20260630_z37RJ0XB0yz7" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2026</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20251231_z9Xw1wFjWFgc" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2025</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LongTermDebtFairValue_iI_pn3n3_zKa13dL4QzEk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Fair Value</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtFairValue" contextRef="AsOf2026-06-30" id="Fact001343" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">215,180</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtFairValue" contextRef="AsOf2025-12-31" id="Fact001344" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">170,727</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zSzgwgew1Z2j" style="vertical-align: bottom; background-color: White">
    <td>Carrying Value</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2026-06-30" id="Fact001346" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">219,238</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LongTermDebtNoncurrent" contextRef="AsOf2025-12-31" id="Fact001347" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">171,202</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001349" name="us-gaap:IncomeTaxDisclosureTextBlock"><p id="xdx_809_eus-gaap--IncomeTaxDisclosureTextBlock_z7g8eZ1xcPCh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
10.<span id="xdx_824_zlKstDgsSy45"> Income Taxes</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company files income tax returns for TG, ES and ES Metals in the Republic of Colombia. GM&amp;P, Componenti and ESW LLC are U.S. entities
based in Florida subject to U.S. federal and state income taxes. Tecnoglass as well as the Company&#8217;s other subsidiaries in the
Cayman Islands do not currently have any tax obligations.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
July 7, 2026, the Company completed its continuation from the Cayman Islands to the State of Florida and changed its jurisdiction of
incorporation from the Cayman Islands to Florida. In connection with the continuation, the Company became governed by the Florida Business
Corporation Act and its Florida Articles of Incorporation and Bylaws. Each outstanding ordinary share of the Company automatically became
a share of common stock of the Florida corporation with the same par value, and the Company&#8217;s common stock continues to be listed
and traded on the New York Stock Exchange under the symbol &#8220;TGLS.&#8221;</span></p>

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

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

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
a result of the redomiciliation, the Company will be subject to U.S. federal income taxation. The Company&#8217;s foreign subsidiaries
will be treated as controlled foreign corporations for U.S. tax purposes, and certain income of those entities will be included in the
U.S. tax computation. Management believes that the effective foreign tax rates applicable to such income are sufficient to generate foreign
tax credits that substantially offset any incremental U.S. federal income tax liability. Accordingly, management does not expect the
redomiciliation to have a material impact on the Company&#8217;s income tax provision.</span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001351" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"><p id="xdx_892_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z7mUdjs4Lt8j" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of income tax expense are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_z4gM7pD2HG9d" style="display: none">Schedule
of Components of Income Tax Expense</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49C_20260401__20260630_zEspyM4OFgX5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49F_20250401__20250630_zLkuv8gz2VK1" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49D_20260101__20260630_zlxANL5NSlpj" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49E_20250101__20250630_zeNqz8ppTE7e" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Current income tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_z41yymLJPOi3" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">United States</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30_country_US" id="Fact001353" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">7,327</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30_country_US" id="Fact001354" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,286</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-01-012026-06-30_country_US" id="Fact001355" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">14,417</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30_country_US" id="Fact001356" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">11,920</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zmVsqKoi08Lj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Colombia</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30_country_CO" id="Fact001358" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,208</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30_country_CO" id="Fact001359" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,329</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-01-012026-06-30_country_CO" id="Fact001360" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">6,571</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30_country_CO" id="Fact001361" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">21,881</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--PA_z9I4b4oXbmX" style="vertical-align: bottom; background-color: White">
    <td>Panama</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1363">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30_country_PA" id="Fact001364" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1365">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30_country_PA" id="Fact001366" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_zNPEy9wDym1i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total current income tax</span></td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30" id="Fact001368" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,535</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30" id="Fact001369" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">18,616</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2026-01-01to2026-06-30" id="Fact001370" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">20,988</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30" id="Fact001371" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">33,806</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred income Tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_zJ05AKjQ8ys4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30_country_US" id="Fact001373" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,130</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30_country_US" id="Fact001374" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">58</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2026-01-012026-06-30_country_US" id="Fact001375" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">994</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30_country_US" id="Fact001376" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,355</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zWiToKdm44O2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Colombia</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30_country_CO" id="Fact001378" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,430</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30_country_CO" id="Fact001379" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">410</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2026-01-012026-06-30_country_CO" id="Fact001380" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">4,015</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30_country_CO" id="Fact001381" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">647</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_zq8YfYmmsED7" style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total deferred income tax</span></td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30" id="Fact001383" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,560</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30" id="Fact001384" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">468</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2026-01-01to2026-06-30" id="Fact001385" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,009</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30" id="Fact001386" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,002</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--IncomeTaxExpenseBenefit_iN_pn3n3_di_z3SFonrzfKo7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total income provision</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2026-04-012026-06-30" id="Fact001388" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">14,095</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2025-04-012025-06-30" id="Fact001389" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">18,148</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2026-01-01to2026-06-30" id="Fact001390" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">25,997</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2025-01-012025-06-30" id="Fact001391" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">35,808</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateContinuingOperations_pid_dp_uPure_zHwyudi7p41" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Effective tax rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="From2026-04-012026-06-30" id="Fact001393" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">36.5</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="From2025-04-012025-06-30" id="Fact001394" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">29.2</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="From2026-01-01to2026-06-30" id="Fact001395" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">31.5</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" contextRef="From2025-01-012025-06-30" id="Fact001396" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">29.3</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
effective income tax rate for the three and six months ended June 30, 2026, of <span id="xdx_90C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20260401__20260630_zNrsDDmHpTae" title="Statutory income tax rate"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2026-04-012026-06-30" id="Fact001398" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">36.5</ix:nonFraction></span>%, and <span id="xdx_90F_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20260101__20260630_zFVLpmBJcEt8" title="Statutory income tax rate"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2026-01-01to2026-06-30" id="Fact001400" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">31.5</ix:nonFraction></span>%, respectively, reflects he impact of certain foreign expenses incurred by the Company&#8217;s Colombian subsidiaries that are not deductible for income tax purposes. The effective
income tax rate for the three and six months ended June 30, 2025, of <span id="xdx_902_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20250401__20250630_zIVKmb6x7tKh" title="Statutory income tax rate"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2025-04-012025-06-30" id="Fact001402" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">29.2</ix:nonFraction></span>%, and <span id="xdx_908_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20250101__20250630_znjxNbhqQ9pj" title="Statutory income tax rate"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2025-01-012025-06-30" id="Fact001404" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">29.3</ix:nonFraction></span>%, respectively, approximates the weighted average
statutory rate of <span id="xdx_90E_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_pid_dp_uPure_c20260101__20260630_zXkuRpcuRE76" title="Weighted average statutory rate"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" contextRef="From2026-01-01to2026-06-30" id="Fact001406" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">29.1</ix:nonFraction></span>%.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001408" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock"><p id="xdx_80C_eus-gaap--RelatedPartyTransactionsDisclosureTextBlock_zA6cmrWfO5mf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
11. <span id="xdx_82F_zSnu9k5eAumc">Related Parties</span></b></span></p>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001410" name="us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock"><p id="xdx_899_eus-gaap--ScheduleOfRelatedPartyTransactionsTableTextBlock_zzJMawkfBaF9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following is a summary of assets, liabilities, and income transactions with all related parties:</span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_498_20260630_zB8VoKaWW8sc" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49C_20251231_zU10sDXTopL8" style="font-weight: bold; text-align: center">December 31,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Due from related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYa5dHayodYf" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left">Alutrafic Led SAS</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001412" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">644</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2025-12-31_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001413" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">525</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z4l9SCPOkpUf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Studio Avanti SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001415" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">427</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2025-12-31_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001416" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">403</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z8trKFIYDuti" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Prisma-Glass LLC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001418" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">359</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2025-12-31_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001419" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">404</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvomiWAZGspj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Due from other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2026-06-30_custom_OtherMember_us-gaap_RelatedPartyMember" id="Fact001421" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">645</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2025-12-31_custom_OtherMember_us-gaap_RelatedPartyMember" id="Fact001422" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">670</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zLueAwP7eWHe" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1pt">Total due from related parties</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember" id="Fact001424" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,075</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherReceivablesNetCurrent" contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember" id="Fact001425" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,002</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Due to related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zu73D6ZhCK65" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Vidrio Andino</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember" id="Fact001427" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,131</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember" id="Fact001428" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,717</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zkI2AAZtLwCd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Due to other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2026-06-30_custom_OtherMember_us-gaap_RelatedPartyMember" id="Fact001430" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3,764</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2025-12-31_custom_OtherMember_us-gaap_RelatedPartyMember" id="Fact001431" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,164</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUe6z8kJ80Rl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1pt">Total due to related parties</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember" id="Fact001433" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,895</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:OtherLiabilitiesCurrent" contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember" id="Fact001434" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,881</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001436" name="TGLS:ScheduleOfSaleToRelatedPartyTableTextBlock"><p id="xdx_89F_ecustom--ScheduleOfSaleToRelatedPartyTableTextBlock_zCetpNutn8Ck" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zCZwS14O0JO3" style="display: none">Schedule of Sale to Related Parties</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260401__20260630_zIx960hdwuSl" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20250401__20250630_zTQAq5li7D82" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_497_20260101__20260630_z1LrHc7hthgf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20250101__20250630_zY4yLST7hgV7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Sales to related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKAbpRw7IGM2" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Prisma Glass LLC</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001438" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">448</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001439" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">785</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001440" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">604</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001441" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,168</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z6AQXZpNWKX4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Alutrafic Led SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001443" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">276</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001444" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">230</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001445" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">569</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001446" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">587</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYOZkxWsFxtf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Studio Avanti SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001448" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">51</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001449" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">294</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001450" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">145</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001451" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">532</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--SalesToOtherRelatedPartiesMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zyzFB6Gny5H3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Sales to other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember" id="Fact001453" format="ixt:numdotdecimal" decimals="-3" scale="3" sign="-" unitRef="USD">55</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember" id="Fact001454" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">93</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember" id="Fact001455" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">23</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember" id="Fact001456" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">130</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zBnTFvAnmPTi" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales to related parties</span></td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_us-gaap_RelatedPartyMember" id="Fact001458" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">720</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_us-gaap_RelatedPartyMember" id="Fact001459" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,401</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_us-gaap_RelatedPartyMember" id="Fact001460" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,341</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_us-gaap_RelatedPartyMember" id="Fact001461" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,417</ix:nonFraction></td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we sell products to Alutrafic Led SAS (&#8220;Alutrafic&#8221;), a fabricator of electrical lighting
equipment. Affiliates of Jose Daes and Christian Daes, the Company&#8217;s Chief Executive Officer and Chief Operating Officer, respectively,
have an ownership stake in Alutrafic. During the three and six months ended June 30, 2026, we sold $<span id="xdx_903_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z7DB6J1xbn22" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001463" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">276</ix:nonFraction></span>, and $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zfejn2xz33Cb" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001465" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">569</ix:nonFraction></span>, respectively, to Alutrafic,
compared to $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z72s2jx4EcKa" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001467" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">230</ix:nonFraction></span> and $<span id="xdx_903_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z67X1TCSDbYb" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001469" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">587</ix:nonFraction></span> during the three and six months ended June 30, 2025, respectively. Additionally, we had outstanding accounts
receivable from Alutrafic of $<span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zsXEnDaAzdnj" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001471" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">644</ix:nonFraction></span> and $<span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvozkj8riDl9" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2025-12-31_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember" id="Fact001473" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">525</ix:nonFraction></span> as of June 30, 2026, and December 31, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fundacion
Tecnoglass-ESWindows is a non-for-profit entity set up by the Company to carry out social causes in the communities around where we operate.
We made charitable contributions during the three and six months ended June 30, 2026 of $<span id="xdx_90D_ecustom--CashContributionsForSocialCauses_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zTMcsxpYKrW" title="Cash contributions for social causes"><ix:nonFraction name="TGLS:CashContributionsForSocialCauses" contextRef="From2026-04-012026-06-30_custom_FundacionTecnoglassMember" id="Fact001475" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,242</ix:nonFraction></span> and $<span id="xdx_902_ecustom--CashContributionsForSocialCauses_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zx8XjzSLkPO" title="Cash contributions for social causes"><ix:nonFraction name="TGLS:CashContributionsForSocialCauses" contextRef="From2026-01-012026-06-30_custom_FundacionTecnoglassMember" id="Fact001477" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,426</ix:nonFraction></span>, respectively, compared to
$<span id="xdx_900_ecustom--CashContributionsForSocialCauses_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zAQgFkR8lJd9" title="Cash contributions for social causes"><ix:nonFraction name="TGLS:CashContributionsForSocialCauses" contextRef="From2025-04-012025-06-30_custom_FundacionTecnoglassMember" id="Fact001479" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">998</ix:nonFraction></span> and $<span id="xdx_907_ecustom--CashContributionsForSocialCauses_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zQV18jErpGIk" title="Cash contributions for social causes"><ix:nonFraction name="TGLS:CashContributionsForSocialCauses" contextRef="From2025-01-012025-06-30_custom_FundacionTecnoglassMember" id="Fact001481" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,046</ix:nonFraction></span>, during the three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we sell products to Prisma-Glass LLC, a distributer and installer of architectural systems in Florida
that is owned and controlled by family members of Christian Daes. We sold $<span id="xdx_904_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUIlgur6D49j" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001483" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">448</ix:nonFraction></span> and $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zxJNB7Ou1Aak" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001485" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">604</ix:nonFraction></span>, respectively, to Prisma-Glass LLC during the
three and six months ended June 30, 2026, compared to $<span id="xdx_90B_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zzCM9r7DXNM4" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001487" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">785</ix:nonFraction></span> and $<span id="xdx_900_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zakknlS96un8" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001489" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">1,168</ix:nonFraction></span>, respectively, during the three and six months ended June 30, 2025.
The Company had outstanding accounts receivable from Prisma-Glass of $<span id="xdx_90D_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zEF9QEC7f12h" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001491" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">359</ix:nonFraction></span> and $<span id="xdx_90D_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zQZiBk7cjkC3" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2025-12-31_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember" id="Fact001493" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">404</ix:nonFraction></span> as of June 30, 2026, and December 31, 2025, respectively.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Santa
Maria del Mar SAS</i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we purchase fuel for use at our manufacturing facilities from Estaci&#243;n Santa Maria del Mar SAS,
a gas station located in the vicinity of our manufacturing campus which is owned by affiliates of Jose Daes and Christian Daes. During
the three and six months ended June 30, 2026, we purchased $<span id="xdx_901_ecustom--PurchasePriceOfFuel_pn3n3_c20260401__20260630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zOlFuRuM5QB6" title="Purchases of fuel"><ix:nonFraction name="TGLS:PurchasePriceOfFuel" contextRef="From2026-04-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember" id="Fact001495" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">462</ix:nonFraction></span> and $<span id="xdx_909_ecustom--PurchasePriceOfFuel_pn3n3_c20260101__20260630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zafW5hESOgAl" title="Purchases of fuel"><ix:nonFraction name="TGLS:PurchasePriceOfFuel" contextRef="From2026-01-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember" id="Fact001497" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">846</ix:nonFraction></span>, respectively, compared to $<span id="xdx_90D_ecustom--PurchasePriceOfFuel_pn3n3_c20250401__20250630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvjpsfxfNd9f" title="Purchases of fuel"><ix:nonFraction name="TGLS:PurchasePriceOfFuel" contextRef="From2025-04-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember" id="Fact001499" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">131</ix:nonFraction></span> and $<span id="xdx_902_ecustom--PurchasePriceOfFuel_pn3n3_c20250101__20250630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_znJqlWa6pEkf" title="Purchases of fuel"><ix:nonFraction name="TGLS:PurchasePriceOfFuel" contextRef="From2025-01-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember" id="Fact001501" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">719</ix:nonFraction></span> purchased during the
three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2025, the Company entered into a partnership with Storm Armour, LLC to create Storm Armour Solutions, LLC which has the purpose
of participating in the sale, sublicensing, and distribution of licensed products in the areas of influence, under a licensing agreement.
To join this business, Tecno Inc created a wholly owned subsidiary named Tecnoglass Armour, LLC, a Limited Liability Company based in
the State of Florida. Tecnoglass Armour, LLC has a <span id="xdx_907_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20250630__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--StormArmourSolutionsLLCMember_z2w6XVuFnEmd" title="Equity method investment ownership percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2025-06-30_custom_StormArmourSolutionsLLCMember" id="Fact001503" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">60</ix:nonFraction></span>% capital contribution of Storm Armour Solutions, LLC. As of June 30, 2026, we had
an investment of $<span id="xdx_90A_eus-gaap--Investments_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--StormArmourSolutionsLLCMember_z4EpDRJbXCi8" title="Investments"><ix:nonFraction name="us-gaap:Investments" contextRef="AsOf2026-06-30_custom_StormArmourSolutionsLLCMember" id="Fact001505" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">901</ix:nonFraction></span> recorded on our consolidated balance sheet.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we sell products to Studio Avanti SAS (&#8220;Avanti&#8221;), a distributer and installer of architectural
systems in Colombia. Avanti is owned and controlled by Alberto Velilla, who is director of Energy Holding Corporation, the Company&#8217;s
largest shareholder. As of June 30, 2026 and December 31, 2025, the Company had outstanding accounts receivable from Avanti of $<span id="xdx_90C_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYTSbdUKfMe9" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001507" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">427</ix:nonFraction> </span>and
$<span id="xdx_90E_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zr6TP2IyLPN8" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableNet" contextRef="AsOf2025-12-31_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001509" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">403</ix:nonFraction></span>, respectively. During the three and six months ended June 30, 2026, we sold $<span id="xdx_90C_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z5UmDfb6sKT2" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-04-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001511" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">51</ix:nonFraction></span> and $<span id="xdx_900_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z9O0CUrSKaGc" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2026-01-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001513" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">145</ix:nonFraction></span> of products to Avanti, respectively, compared
to $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zAzPXj9EYJFl" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-04-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001515" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">294</ix:nonFraction></span> and $<span id="xdx_904_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKPgWZJxcAKa" title="Revenue from related parties"><ix:nonFraction name="us-gaap:Revenues" contextRef="From2025-01-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember" id="Fact001517" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">532</ix:nonFraction></span> during the three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
May 3, 2019, we consummated a joint venture agreement with Saint-Gobain, a world leader in the production of float glass, a key component
of our manufacturing process, whereby we acquired a <span id="xdx_90C_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_c20190503__srt--OwnershipAxis__custom--VidrioAndinoMember_zrWL9f949cZ3" title="Minority interest ownership"><ix:nonFraction name="us-gaap:MinorityInterestOwnershipPercentageByParent" contextRef="AsOf2019-05-03_custom_VidrioAndinoMember" id="Fact001519" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">25.8</ix:nonFraction></span>% minority ownership interest in Vidrio Andino, a Colombia-based subsidiary of
Saint-Gobain. The purchase price for our interest in Vidrio Andino was $<span id="xdx_90F_eus-gaap--BusinessCombinationConsiderationTransferred1_pn6n6_c20201208__20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zpoi1Bi66WGh" title="Purchase price of interest"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2020-12-082020-12-09_custom_VidrioAndinoMember" id="Fact001521" format="ixt:numdotdecimal" decimals="-6" scale="6" unitRef="USD">45</ix:nonFraction></span> million, of which $<span id="xdx_90F_eus-gaap--PaymentsToAcquireBusinessesGross_pn5n6_c20201208__20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zIIf0zs9DYgj" title="Payment of cash"><ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="From2020-12-082020-12-09_custom_VidrioAndinoMember" id="Fact001523" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">34.1</ix:nonFraction></span> million was paid in cash and $<span id="xdx_90D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pn5n6_c20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zOsRlSmkAeBi" title="Land contribution value"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" contextRef="AsOf2020-12-09_custom_VidrioAndinoMember" id="Fact001525" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">10.9</ix:nonFraction>
</span>million paid through the contribution of land on December 9, 2020. On October 28, 2020, we acquired said land from a related party and
paid for it with the issuance of an aggregate of <span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesAcquisitions_pid_c20201028__20201028__srt--OwnershipAxis__custom--VidrioAndinoMember_zxbzVeQwsEh3" title="Shares issued during acquisition"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesAcquisitions" contextRef="From2020-10-282020-10-28_custom_VidrioAndinoMember" id="Fact001527" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,557,142</ix:nonFraction></span> ordinary shares of the Company, valued at $<span id="xdx_901_eus-gaap--SharesIssuedPricePerShare_iI_pid_c20201028__srt--OwnershipAxis__custom--VidrioAndinoMember_zgCaXgBwgjQl" title="Shares issued, price per share"><ix:nonFraction name="us-gaap:SharesIssuedPricePerShare" contextRef="AsOf2020-10-28_custom_VidrioAndinoMember" id="Fact001529" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">7.00</ix:nonFraction></span> per share, which represented
an approximate<span id="xdx_904_ecustom--PremiumClosingStockPercentage_iI_pid_dp_uPure_c20201027__srt--OwnershipAxis__custom--VidrioAndinoMember_zCrxGnGZQ17b" title="Premium closing stock, percent"> <ix:nonFraction name="TGLS:PremiumClosingStockPercentage" contextRef="AsOf2020-10-27_custom_VidrioAndinoMember" id="Fact001531" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">33</ix:nonFraction></span>% premium based on the closing stock price as of October 27, 2020.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
land will serve the purpose of developing a second float glass plant nearby our existing manufacturing facilities which we expect will
carry significant efficiencies for us once it becomes operative, in which we will also have a <span id="xdx_90B_ecustom--ExpectedOwnershipPercentage_pid_dp_uPure_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zwkpAYeggvJi" title="Expected ownership percentage"><ix:nonFraction name="TGLS:ExpectedOwnershipPercentage" contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember" id="Fact001533" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">25.8</ix:nonFraction></span>% interest. The new plant will be funded
with proceeds from the original cash contribution made by the Company, operating cashflows from the Bogota plant, debt incurred at the
joint venture level that will not consolidate into the Company and an additional contribution by us of approximately $<span id="xdx_907_ecustom--FutureAdditionalContributionAmount_pn5n6_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_znehCTgBXqGi" title="Additional contribution amount"><ix:nonFraction name="TGLS:FutureAdditionalContributionAmount" contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember" id="Fact001535" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">12.5</ix:nonFraction></span> million if
needed (based on debt availability as a first option).</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we purchased $<span id="xdx_909_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20260401__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zLK1sFiPlDE1" title="Purchase from related party"><ix:nonFraction name="us-gaap:PaymentsToAcquireProductiveAssets" contextRef="From2026-04-012026-06-30_custom_VidrioAndinoMember" id="Fact001537" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">9,352</ix:nonFraction></span> and $<span id="xdx_90A_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zMIthypWg096" title="Purchase from related party"><ix:nonFraction name="us-gaap:PaymentsToAcquireProductiveAssets" contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember" id="Fact001539" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">17,393</ix:nonFraction></span>, of materials from Vidrio Andino during the three and six months ended
June 30, 2026, respectively, compared to $<span id="xdx_901_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20250401__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_z457kGMTz5B2" title="Purchase from related party"><ix:nonFraction name="us-gaap:PaymentsToAcquireProductiveAssets" contextRef="From2025-04-012025-06-30_custom_VidrioAndinoMember" id="Fact001541" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">10,633</ix:nonFraction></span>, and $<span id="xdx_900_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20250101__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_z8DtIkXNl2Vd" title="Purchase from related party"><ix:nonFraction name="us-gaap:PaymentsToAcquireProductiveAssets" contextRef="From2025-01-012025-06-30_custom_VidrioAndinoMember" id="Fact001543" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">19,678</ix:nonFraction></span>, during the three and six months ended June 30, 2025, respectively. We
also had outstanding payables to Vidrio Andino of $<span id="xdx_906_eus-gaap--AccountsPayableCurrent_iI_pn3n3_c20260630__srt--OwnershipAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zGTuPID1eGc1" title="Payable outstanding"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862468" id="Fact001545" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,131</ix:nonFraction></span> and $<span id="xdx_908_eus-gaap--AccountsPayableCurrent_iI_pn3n3_c20251231__srt--OwnershipAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zssVhNHkMOU" title="Payable outstanding"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862484" id="Fact001547" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">5,717</ix:nonFraction></span> as of June 30, 2026 and December 31, 2025, respectively. We recorded
equity method loss of $<span id="xdx_908_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20260401__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zUeh8iCwVXBg" title="Equity method income"><ix:nonFraction name="us-gaap:IncomeLossFromEquityMethodInvestments" contextRef="From2026-04-012026-06-30_custom_VidrioAndinoMember" id="Fact001549" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">159</ix:nonFraction></span>, and income of $<span id="xdx_909_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zJfix5Ywtuhi" title="Equity method income"><ix:nonFraction name="us-gaap:IncomeLossFromEquityMethodInvestments" contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember" id="Fact001551" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">3</ix:nonFraction></span>, on our Consolidated Statement of Operations during the three and six months ended June
30, 2026, respectively, compared to $<span id="xdx_908_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20250401__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_zfbpMlayPLK5" title="Equity method income"><ix:nonFraction name="us-gaap:IncomeLossFromEquityMethodInvestments" contextRef="From2025-04-012025-06-30_custom_VidrioAndinoMember" id="Fact001553" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">941</ix:nonFraction></span> and $<span id="xdx_90C_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20250101__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_zvr8F3XnRjBg" title="Equity method income"><ix:nonFraction name="us-gaap:IncomeLossFromEquityMethodInvestments" contextRef="From2025-01-012025-06-30_custom_VidrioAndinoMember" id="Fact001555" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">2,258</ix:nonFraction></span>, recorded during the three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have an investment in Zofracosta SA, a real estate holding company located in the vicinity of the proposed glass plant being built through
our Vidrio Andino joint venture, recorded at $<span id="xdx_907_eus-gaap--Investments_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--ZofracostaSAMember_z6GN0r2eRrKb" title="Investments"><ix:nonFraction name="us-gaap:Investments" contextRef="AsOf2026-06-30_custom_ZofracostaSAMember" id="Fact001557" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">883</ix:nonFraction></span> and $<span id="xdx_90F_eus-gaap--Investments_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--ZofracostaSAMember_z4R02GYrBbgh" title="Investments"><ix:nonFraction name="us-gaap:Investments" contextRef="AsOf2025-12-31_custom_ZofracostaSAMember" id="Fact001559" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">810</ix:nonFraction></span> as of June 30, 2026 and December 31, 2025, respectively. Affiliates of Jose
Daes and Christian Daes have a majority ownership stake in Zofracosta SA.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001561" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock"><p id="xdx_80D_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zypxtQAl2bSi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
12. <span id="xdx_82D_zkoAw6mjD5Id">Shareholders&#8217; Equity</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
June 10, 2026, the Company declared a regular quarterly dividend of $<span id="xdx_900_eus-gaap--SharePrice_iI_pid_c20260318__us-gaap--AwardTypeAxis__custom--QuarterlyRateMember_zW5A8ZrJ1Tzg" title="Declared per share"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2026-03-18_custom_QuarterlyRateMember" id="Fact001563" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.15</ix:nonFraction></span>per share, or $<span id="xdx_901_eus-gaap--SharePrice_iI_pid_c20260318__us-gaap--AwardTypeAxis__custom--AnnualBasisMember_zdN81T8mhTOi" title="Share price"><ix:nonFraction name="us-gaap:SharePrice" contextRef="AsOf2026-03-18_custom_AnnualBasisMember" id="Fact001565" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.60</ix:nonFraction></span> per share on an annualized basis. The dividend
was paid on July 31, 2026, to shareholders of record as of the close of business on June 30, 2026.</span></p>

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

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

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

<ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001567" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"><p id="xdx_898_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zwMLxdiSYyfc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth the computation of the basic and diluted earnings per share for the three and six months ended June 30, 2026
and 2025:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z8VjupJubIij" style="display: none">Schedule of Earnings Per Share, Basic and Diluted</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_492_20260401__20260630_z19WjrnNjtse" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_492_20250401__20250630_zUgwseg41kU6" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_498_20260101__20260630_zVuScfm19hGk" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_491_20250101__20250630_zEPKjPo0IOzc" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three
months ended June 30,</b></span></p></td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-right: 0pt; margin-left: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six
months ended June 30,</b></span></p></td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Numerator for basic and diluted earnings per share</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--NetIncomeLoss_pn3n3_zMqOZExWCnbe" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Net Income attributable to parent</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2026-04-012026-06-30" id="Fact001569" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">24,555</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2025-04-012025-06-30" id="Fact001570" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">44,083</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2026-01-01to2026-06-30" id="Fact001571" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">56,446</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2025-01-012025-06-30" id="Fact001572" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">86,272</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Denominator</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zc4zDLzjyfuj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Denominator for basic earnings per ordinary share - weighted average shares outstanding</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2026-04-012026-06-30" id="Fact001574" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,364,801</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2025-04-012025-06-30" id="Fact001575" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,988,155</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2026-01-01to2026-06-30" id="Fact001576" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,497,265</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2025-01-012025-06-30" id="Fact001577" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,989,650</ix:nonFraction></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--EffectOfDilutiveSecuritiesAndStockDividend_pid_zhuPwpmVUF1j" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Effect of dilutive securities and stock dividend</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zO6yER9Llm29" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Denominator for diluted earnings per ordinary share - weighted average shares outstanding</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2026-04-012026-06-30" id="Fact001584" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,364,801</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2025-04-012025-06-30" id="Fact001585" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,988,155</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2026-01-01to2026-06-30" id="Fact001586" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">44,497,265</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2025-01-012025-06-30" id="Fact001587" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">46,989,650</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--EarningsPerShareBasic_pid_zXyHF1VeU2e8" style="vertical-align: bottom; background-color: White">
    <td>Basic earnings per ordinary share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2026-04-012026-06-30" id="Fact001589" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.55</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2025-04-012025-06-30" id="Fact001590" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.94</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2026-01-01to2026-06-30" id="Fact001591" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.27</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2025-01-012025-06-30" id="Fact001592" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.84</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--EarningsPerShareDiluted_pid_zxmUn3cZOrl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted earnings per ordinary share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2026-04-012026-06-30" id="Fact001594" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.55</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2025-04-012025-06-30" id="Fact001595" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.94</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2026-01-01to2026-06-30" id="Fact001596" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.27</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2025-01-012025-06-30" id="Fact001597" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.84</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the six months ended June 30, 2026, the Company repurchased <span id="xdx_907_eus-gaap--TreasuryStockSharesAcquired_pid_c20260101__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zjHBd5vF7Ydg" title="Number of shares repurchased"><ix:nonFraction name="us-gaap:TreasuryStockSharesAcquired" contextRef="From2026-01-012026-06-30_us-gaap_TreasuryStockCommonMember" id="Fact001599" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">372,910</ix:nonFraction></span> shares for an aggregate purchase price of $<span id="xdx_909_eus-gaap--TreasuryStockValueAcquiredCostMethod_iN_pn5n6_di_c20260101__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zeEdqk81gXUi" title="Value of shares repurchased"><ix:nonFraction name="us-gaap:TreasuryStockValueAcquiredCostMethod" contextRef="From2026-01-012026-06-30_us-gaap_TreasuryStockCommonMember" id="Fact001601" format="ixt:numdotdecimal" decimals="-5" scale="6" sign="-" unitRef="USD">16.5</ix:nonFraction></span> million as part of
its existing share repurchase program to enhance long-term stockholders value. Treasury stock is recorded at cost and presented as a
reduction of stockholders&#8217; equity in the accompanying Consolidated Balance Sheets. As of June 30, 2026, treasury shares are carried
at their aggregate repurchase cost of $<span id="xdx_904_eus-gaap--TreasuryStockValue_iI_pn3n3_c20260630_zXxcoQEA8V67" title="Treasury shares, aggregate repurchase cost"><ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="AsOf2026-06-30" id="Fact001603" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">95,679</ix:nonFraction></span>.</span></p>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2026-01-01to2026-06-30" escape="true" id="Fact001605" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock"><p id="xdx_805_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zUPvuKiRWZm8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
13. <span id="xdx_82E_zehRMESBUsVb">Commitments and Contingencies</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the Company had outstanding obligations to purchase an aggregate of at least $<span id="xdx_90D_eus-gaap--LongTermPurchaseCommitmentAmount_pn3n3_c20260101__20260630__srt--RangeAxis__srt--MinimumMember__srt--StatementScenarioAxis__custom--FebruaryTwentyEightThousandThirtyThreeMember_zHNWxYSrROmg" title="Purchase of aggregate raw material"><ix:nonFraction name="us-gaap:LongTermPurchaseCommitmentAmount" contextRef="From2026-01-012026-06-30_srt_MinimumMember_custom_FebruaryTwentyEightThousandThirtyThreeMember" id="Fact001607" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">151,878</ix:nonFraction></span> of certain raw materials from
a specific supplier before February 28, 2030, and an aggregate of at least $<span id="xdx_90C_eus-gaap--LongTermPurchaseCommitmentAmount_pn3n3_c20260101__20260630__srt--RangeAxis__srt--MinimumMember__srt--StatementScenarioAxis__custom--ThroughTwoThousandTwentyEightMember_zBdJl84NyOg5" title="Purchase of aggregate raw material"><ix:nonFraction name="us-gaap:LongTermPurchaseCommitmentAmount" contextRef="From2026-01-012026-06-30_srt_MinimumMember_custom_ThroughTwoThousandTwentyEightMember" id="Fact001609" format="ixt:numdotdecimal" decimals="-3" scale="3" unitRef="USD">8,364</ix:nonFraction></span> of certain raw materials from a specific supplier through
2028.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
time to time, the Company is involved in legal matters arising in the regular course of business. Some disputes are derived directly
from our construction projects, related to supply and installation, and even though deemed ordinary, they may involve significant monetary
damages. We are also subject to other type of litigations arising from employment practices, worker&#8217;s compensation, automobile
claims and general liability. It is very difficult to predict precisely what the outcome of these litigations might be. However, with
the information at our disposition as this time, there are no indications that such claims will result in a material adverse effect on
the business, financial condition or results of operations of the Company.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="pp_001"></span>Item
2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations.</b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">This
Quarterly Report on Form 10-Q includes forward-looking statements within the meaning of Section 27A of the Securities Act of 1933, as
amended, and Section 21E of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;). We have based these forward-looking
statements on our current expectations and projections about future events. These forward-looking statements are subject to known and
unknown risks, uncertainties and assumptions about us that may cause our actual results, levels of activity, performance or achievements
to be materially different from any future results, levels of activity, performance or achievements expressed or implied by such forward-looking
statements. In some cases, you can identify forward-looking statements by terminology such as &#8220;may,&#8221; &#8220;should,&#8221;
&#8220;could,&#8221; &#8220;would,&#8221; &#8220;expect,&#8221; &#8220;plan,&#8221; &#8220;anticipate,&#8221; &#8220;believe,&#8221;
&#8220;estimate,&#8221; &#8220;continue,&#8221; or the negative of such terms or other similar expressions. Factors that might cause
or contribute to such a discrepancy include, but are not limited to, those described in our other Securities and Exchange Commission
(&#8220;SEC&#8221;) filings. References to &#8220;we&#8221;, &#8220;us&#8221; or &#8220;our&#8221; are to Tecnoglass Holdings Inc., except
where the context requires otherwise. The following discussion should be read in conjunction with our unaudited condensed consolidated
financial statements and related notes thereto included elsewhere in this report.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are experienced and highly skilled in the vertical integration of window and architectural glass manufacturing, distribution, and professional
fitting. Our expertise extends to the production of top-quality windows, as well as the supply of aluminum, vinyl, and other components.
Our dedicated and knowledgeable team serves a diverse range of commercial and residential construction projects worldwide, guaranteeing
outstanding products and seamless installation services. With a focus on innovation, combined with providing highly specified products
with the highest quality standards at competitive prices, we have earned #1 spot in the Forbe&#8217;s list of America&#8217;s 100 most
successful small-cap companies for 2024, and developed a leadership position in each of our core markets. In the United States, which
is our largest market, we were ranked among the four largest glass fabricators serving the United States in 2025 by Glass Magazine. In
addition, we believe we are the leading glass transformation company in Colombia. Our customers, which include developers, general contractors
or installers for hotels, office buildings, shopping centers, airports, universities, hospitals and multi-family and residential buildings,
look to us as a value-added partner based on our product development capabilities, our high-quality products and our unwavering commitment
to exceptional service.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">With
over 40 years of experience in architectural glass and aluminum assembly, we specialize in transforming various glass products. Our offerings
include tempered safety glass, double thermo-acoustic glass, and laminated glass. Our wide range of finished glass products are utilized
in diverse buildings for floating facades, curtain walls, windows, doors, handrails, as well as interior and bathroom spatial dividers.
In addition to glass, we manufacture aluminum and vinyl products such as profiles, rods, bars, plates, and other hardware specifically
designed for window manufacturing.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
majority of our products are manufactured in a 6.1 million square foot, state-of-the-art manufacturing complex in Barranquilla, Colombia
that provides easy access to North, Central and South America, the Caribbean and the Pacific. Our products can be found on some of the
most distinctive buildings in these regions, including 100 Hood Park Drive (Boston), 601 West 29<sup>th</sup> St (New York). Norwegian
Cruise Line Terminal B (Miami), Paramount Miami Worldcenter (Miami), Via 57 West (New York), One65 Main (Cambridge), AE&#8217;O Tower
(Honolulu), Salesforce Tower (San Francisco), and One Thousand Museum (Miami). Our track record of successfully delivering high profile
projects has earned us an increasing number of opportunities across the United States, evidenced by our expanding backlog and overall
revenue growth.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
structural competitive advantage is underpinned by our low-cost manufacturing footprint, vertically integrated business model and geographic
location. Our integrated facilities in Colombia and distribution and services operations in Florida provide us with a significant cost
advantage in both manufacturing and distribution, and we continue to invest in these operations to expand our operational capabilities.
We also leverage automation and process digitalization across our operations to improve throughput, consistency and scalability, supporting
cost efficiency and service reliability. Our lower cost manufacturing footprint allows us to offer competitive prices for our customers,
while also providing innovative, high quality and high value-added products, together with consistent and reliable service. We have historically
generated high margin organic growth based on our position as a value-added solutions provider for our customers.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have a strong presence in the Florida market, which represents a substantial portion of our revenue stream and backlog. Our success in
Florida has primarily been achieved through sustained organic growth, with further penetration now taking place into other highly populated
areas of the United States. As part of our strategy to become a fully vertically integrated company, we have supplemented our organic
growth with some acquisitions that have allowed us added control over our supply chain allowed for further vertical integration of our
business and will act as a platform for our future expansion in the United States. Earlier acquisitions in 2016 and 2017, of ESW and
GM&amp;P respectively, helped establish our U.S. distribution and installation capabilities, while more recent transactions&#8212;including
our minority interest in Vidrio Andino, our full ownership of ESMetals, and the 2025 acquisition of certain assets of Continental Glass
Systems, LLC&#8212;have enhanced our vertical integration, capacity, customer reach, and backlog.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
April 3, 2025, we completed the acquisition of certain assets and assume certain liabilities of Continental Glass Systems, LLC, a leading
provider of architectural glass and glazing solutions in the Southeast U.S., that included manufacturing equipment, intangibles, and
a strong project backlog, enhancing our U.S. presence, customer reach, and supply chain efficiency.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
continued diversification of the group&#8217;s presence and product portfolio is a core component of our strategy. In particular, we
are actively seeking to expand our presence in United States outside of Florida. We also launched a residential window offering which,
we believe, will help us expand our presence in the United States and generate additional organic growth. We believe that the quality
of our products, coupled with our ability to price competitively given our structural advantages on cost, will allow us to generate further
growth in the future.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have focused on working with <i>The Power of Quality</i>, always making sure that our vision of sustainability is immersed into every
aspect of our business, including social, environmental, economic and governance variables, that help us make decisions and create value
for our stakeholders. We carry out a series of initiatives based on our global sustainability strategy, which is supported on three fundamental
pillars: promoting an ethical and responsible continuous growth, leading eco-efficiency and innovation, and empowering our environment.
As part of this strategy, we have voluntarily adhered to UN Global Compact Principles since 2017 and in pursuit of our cooperation with
the attainment of the Sustainable Development Goals joined in 2021 a program to dynamize, strengthen and make visible the management
of greenhouse gas emissions as a carbon neutral strategy set out by the Colombian government for 2050. Additionally, we are advancing
initiatives in circular economy and implementing comprehensive water management and treatment strategies aimed at improving efficiency,
reuse and replenishment, in order to maintain our water-positive operations.</span></p>

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

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

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%; text-align: left">Operating Revenues</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">295,291</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">255,546</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">544,303</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">477,834</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Cost of sales</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(185,257</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(141,211</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(338,435</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(265,974</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Gross profit</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">110,034</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">114,335</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">205,868</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">211,860</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Operating expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(73,490</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(53,135</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(124,383</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(95,607</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other operating income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,280</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Operating income</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">36,544</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">61,204</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">81,485</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">120,533</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Non-operating income and expenses, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">644</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">588</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,604</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Equity method (loss) income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(231</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">942</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(129</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,286</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Foreign currency transactions gains</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,213</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">847</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,130</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">338</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Interest Expense and deferred cost of financing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,520</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,350</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,543</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(2,681</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Income tax provision</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(14,095</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(18,148</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(25,997</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(35,808</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left">Net income</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">24,555</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">44,083</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">56,446</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">86,272</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Comparison
of quarterly periods ended June 30, 2026 and 2025</b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Operating
revenues increased $39.7 million, or 15.6%, from $255.5 during the quarter ended June 30, 2025, to $295.3 million, during the quarter
ended June 30, 2026. Strong revenues during the second quarter of 2026 were driven by market share gains and stronger activity in our
core U.S markets, where revenues increased $43.9 million, or 18.1% year over year, to $286.2 million. In terms of end markets, the increase
was driven by strong growth in both US commercial and residential market. Revenues from the commercial market rose 15.7% or $22.8 million
year over year, as we continue to execute on our growing project backlog. In addition, residential market sales increased 15.4% or $16.9
million yar over year, reflecting market share gains in new geographies and a modest pull-forward effect when we announced a mid-single
digit price increase for quotes issued after May. Revenues from Latin America and the Caribbean decreased $4.1 million, or 31.4% year
over year.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Gross
profit during the second quarter of 2026 was $110.0 million, a decrease of $4.3 million, or 3.8%, from $114.3 million during the second
quarter of 2025. The gross profit margin during the three months ended June 30, 2026, was 37.3%, compared to 44.7% during the second
quarter of 2025, primarily driven by higher input costs associated with increasing aluminum prices, as well as higher salaries given
the one-time double digit minimum wage increase put in place in Colombia at the beginning of 2026. Additionally, we had a stronger local
currency year over year, impacting our local currency costs on a comparable basis. The aforementioned factors were partially offset by
positive pricing adjustments implemented in the second quarter of last year and by operating leverage on higher revenues.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Operating
expenses increased $20.3 million, or 38.3%, from $53.1 million to $73.4 million for the quarters ended June 30, 2025 and 2026, respectively.
The increase resulted primarily from Tariffs on imports into the U.S. which generated a total expense of $18.7 million during the second
quarter of 2026, an increase of $10.6 million or 129.2% year over year, from a total Tariff expense of $8.1 million during the second
quarter of 2025. Additionally, increased personnel cost, on higher salaries and a stronger Colombian Peso.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Non
operating income and expenses, net</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three months ended June 30, 2026 and 2025, the Company recorded net non-operating income of $0.6 million in both periods. Non-operating
income is comprised of interest income from short-term investments, as well as non-operating expenses related to certain charitable contributions.
Equity method income, mainly from our joint venture with Saint Gobain decreased $1.2 million, or 124.5%, after recording a loss of $0.2
million during the quarter ended June 30, 2026, compared to an income of $0.9 million recorded during the quarter ended June 30, 2025.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Foreign
currency transaction gains and losses</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three months ended June 30, 2026, the Company recorded a non-operating income of $5.2 million associated with foreign currency transactions
compared to a net non-operating income of $0.8 million during the three months ended June 30, 2025.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Interest
income (expense), net and deferred cost of financing</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Interest
expense and deferred cost of financing increased by $2.2 million, or 160.8%, to $3.5 million for the quarter ended June 30, 2026, as
a result of higher amount of debt from our Senior secured credit facility further explained under capital resources.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
recorded income tax expense of $14.1 million and $18.1 million during the three months ended June 30, 2026, and 2025, respectively. The
effective income tax rate of 36.5% for the three months ended June 30, 2026, primarily reflects the impact of certain foreign expenses incurred by the Company&#8217;s Colombian subsidiaries that are not deductible for income tax purposes.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
a result of the foregoing, the Company recorded net income for the three months ended June 30, 2026, of $24.6 million compared to net
income of $44.1 million for the three months ended June 30, 2025.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Comparison
of six-month periods ended June 30, 2026 and 2025</b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Operating
revenues during the six months ended June 30, 2026 was $544.3 million, compared to $477.8 million during the six months ended June 30,
2025, an increase of $66.5 million or 13.9%, year over year. Strong revenues during the first half of 2026 were driven by strong activity
in the U.S market, where revenues increased $68.6 million, or 15.1% year over year, to $523.4 million. The increase was driven by higher
U.S. commercial market revenues, up $50.0 million, or 17.9% year over year, as we continue to execute on our growing backlog of projects.
Residential revenues increased $16.4 million, or 8.3% year over year, resulting from strong demand momentum in core markets and our ongoing
geographical expansion, and a modest pull-forward effect when we announced a mid-single digit price increase for quotes issued after
May. Revenues from Latin America and the Caribbean decreased $2.1 million, or 9.2% year over year.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Gross
profit during the first half of 2026 was $205.9 million, a decrease of $6.0 million, or 2.8%, from $211.9 million during the first half
of 2025. The gross profit margin during the six months ended June 30, 2026, was 37.8%, compared to 44.3% during the same period of 2025,
primarily driven by higher input costs associated with increasing aluminum prices, as well as higher salaries given the one-time double
digit minimum wage increase put in place in Colombia at the beginning of 2026. Additionally, we had a stronger local currency year over
year, impacting our local currency costs on a comparable basis. The aforementioned factors were partially offset by positive pricing
adjustments implemented in the second quarter of last year.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Operating
expenses increased $28.8 million, or 30.1%, from $95.7 million to $124.4 million for the six months ended June 30, 2025, and 2026,
respectively. The increase resulted primarily from tariffs on imports into the U.S. which generated a net expense of $20.0 million
during the first half of 2026. including a $1.9 million recovery of previously paid import tariffs following the invalidation of
certain tariffs imposed under the International Emergency Economic Powers Act (&#8220;IEEPA&#8221;), an increase of $7.0 million or
53.8% year over year, from a total Tariff expense of $13.0 million during the first half of 2025. Additionally, operating expenses
increased due to higher personnel costs resulting from higher salaries and a stronger Colombian Peso.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Non
operating income and expenses, net</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the six months ended June 30, 2026 and 2025, the Company recorded net non-operating income of $1.5 million and $1.6 million, respectively.
Non-operating income is comprised of interest income from short-term investments, as well as non-operating expenses related to certain
charitable contributions. Equity method income, mainly from our joint venture with Saint Gobain, decreased $2.4 million, or 105.6%, after
recording a net loss of $0.1 million during the six months ended June 30, 2026, compared to an income of $2.3 million recorded during
the six months ended June 30, 2025.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Foreign
currency transaction gains and losses</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the six months ended June 30, 2026, the Company recorded a non-operating income of $6.1 million associated with foreign currency transactions
compared to a net non-operating income of $0.3 million during the six months months ended June 30, 2025.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Interest
income (expense), net and deferred cost of financing</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Interest
expense and deferred cost of financing increased by $3.9 million, or 144.1%, to $6.5 million for the six months ended June 30, 2026,
as a result of higher amount of debt from our Senior secured credit facility further explained under capital resources</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in">We
recorded income tax expense of $26.0 million and $35.8 million during the six months ended June 30, 2026, and 2025, respectively. The
effective income tax rate of 31.5% for the six months ended June 30, 2026, primarily reflects the impact of certain foreign expenses incurred by the
Company's Colombian subsidiaries that are not deductible for income tax purposes.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
a result of the foregoing, the Company recorded net income for the six months ended June 30, 2026, of $56.4 million compared to net income
of $86.3 million for the six months ended June 30, 2025.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026 and December 31, 2025, we had a cash and cash equivalents balance of approximately $80.8 million and $100.9 million,
respectively. Additionally, we currently have approximately $280 million available under several lines of credit.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
anticipate that the Company will continue to generate positive cashflow from operating activities throughout the remainder of the year,
which we believe, in addition to our current liquidity position, provides ample flexibility to service our obligations through the next
twelve months.</span></p>

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

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 31.9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
transform glass and aluminum into high specification architectural glass and custom-made aluminum profiles which require significant
investments in state-of-the-art technology. During the three months ended June 30, 2026 and 2025, we made investments primarily in building,
machinery and equipment in the amounts of $52.7 million and $62.9 million, respectively. Additionally, we acquired $9.8 million and $7.7
million of property plant and equipment under credit during the six months ended June 30, 2026, and 2025, respectively. Investments made
during the first six months of 2026 were mainly related an ongoing broad automation project to increase efficiency, improve headcount
and increase capacity given the Company&#180;s current growth which has reduced excess capacity. Additionally, we continue to amortize
scheduled payments on previous investments to increase capacity and efficiency.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 31.9pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">While
the Company estimates that current manufacturing operating capacity has reached approximately $1.3 billion (which does not account for
incremental installation revenue capacity) it expects to finish the year at a higher level, once current investments become operational.
Additionally, the Company expects the resulting increase in output to improve efficiency throughout its operations while reducing material
waste, reducing headcount and improving overall lead times.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Cash
Flow from Operations, Investing and Financing Activities</b></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Cash Flow provided by Operating Activities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">11,116</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">64,760</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Cash Flow used in Investing Activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(51,005</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(48,627</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash Flow provided by (used in) Financing Activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">18,249</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(14,924</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Effect of exchange rates on cash and cash equivalents</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,553</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,816</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Cash Balance - Beginning of Period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">100,901</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">134,882</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Cash Balance - End of Period</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">80,814</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">137,907</td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the six months ended June 30, 2026 and 2025, operating activities generated approximately $11.1 million and $64.8 million, respectively.
The main source of operating cash during the six months ended June 30, 2026, were driven by trade accounts payable. Trade accounts payable
and accrued expenses generated $31.3 million during the six months ended June 30, 2026, related to higher unpaid balance of higher than
usual raw material purchases as we procure a stock of U.S. sourced aluminum as part of our tariff mitigation strategy, compared with
$21.8 million during the six months ended June 30, 2025. In connection, purchase of inventories used $35.8 million during the six months
ended June 30, 2026, as we continue procure in advance, a higher stock of U.S. sourced aluminum as part of our supply chain resilience
and tariff mitigation strategy, in contrast to $24.0 million generated during the prior year period. The larges use of cash in operating
activities during the six months ended June 30, 2026 were taxes payable, which used $39.2 million and $18.5 million during the six months
ended June 30, 2026 and 2025, respectively, following seasonal tax payment schedules. Additionally, trade accounts receivables, used
$32.3 million in the six months ended June 30, 2026, compared with $20.4 million during the prior year period, driven by a continued
elevated pace of large commercial installation jobs during the first six months of 2026, which entail longer cash cycles.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
used $51.0 million and $48.6 million in investing activities during the six months ended June 30, 2026, and 2025, respectively. During
the six months ended June 30, 2026, we paid $52.7 million to acquire property plant and equipment, mainly related to scheduled payments
on previous investments to increase capacity and efficiency. During the six months ended June 30, 2025, we used $62.9 million for the
acquisition of property and equipment.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Financing
activities also reflected gross debt proceeds of $63.8 million and repayments of $15.7 million, mainly used to repurchase $16.5 million
of our stock during the six months ended June 30, 2025, leaving $92.4 million remaining under our $250 million Share Repurchase Program.</span></p>

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="pp_002"></span>Item
3. Quantitative and Qualitative Disclosures about Market Risk</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are exposed to ongoing market risk related to changes in foreign currency exchange rates and commodity market prices.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Previously,
a rise in interest rates could negatively affect the cost of financing for a significant portion of our debt with variable interest rates.
However, following recent repayments in 2024 only an immaterial portion of our debt is exposed to market risk, net of the effect from
interest rate hedging derivative financial instruments further described in the footnotes to the financial statements, and fluctuations
in interest rates would not have a significant impact on our cost of financing.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are subject to market risk due to changes in the value of foreign currencies in relation to our reporting currency, the U.S. dollar.
Some of our subsidiaries&#8217; operations are based in Colombia and primarily transact business in local currency. Approximately 2.5%
of our consolidated revenues and 25% of our costs and expenses are effectively incurred in Colombian pesos, thereby mitigating some of
the risk associated with changes in foreign exchange rates. This portion of costs and expenses denominated in Colombian Peso excludes
certain items which are transacted in Colombia using Colombian Peso but are priced in U.S. Dollars or are otherwise indexed to U.S. Dollar
rates. Thus a 5% appreciation of the Colombian Peso relative to the US Dollar would result in our revenues for the three months ended
June 30, 2026, increasing by $0.7 million and our costs and expenses increasing by approximately $6.8 million, resulting in a $6.1 million
decrease to net earnings based on results for the three months ended June 30, 2026.</span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Similarly,
a significant portion of the monetary assets and liabilities of these subsidiaries are generally denominated in US Dollars, while their
functional currency is the Colombian peso, thereby resulting in gains or losses from remeasurement of assets and liabilities using the
end of period spot exchange rate. These subsidiaries have both monetary assets and monetary liabilities denominated in US Dollars, thereby
mitigating some of the risk associated with changes in foreign exchange rate. Furthermore, we record a portion of the non-cash foreign
currency transaction gains and losses from remeasurement of certain intercompany loans as other comprehensive income. Net of this, the
Colombian subsidiaries&#8217; US Dollar denominated monetary liabilities exceed their monetary assets by $107,131 million, such that
a 1% devaluation of the Colombian peso will result in a loss of $1.1 million recorded in the Company&#8217;s Consolidated Statement of
Operations as of June 30, 2026.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Additionally,
the results of the foreign subsidiaries must be translated into US Dollars, our reporting currency, in the Company&#8217;s consolidated
financial statements. The currency translation of the financial statements using different exchange rates, as appropriate, for different
parts of the financial statements generates a translation adjustment, which is recorded within other comprehensive income on the Company&#8217;s
Consolidated Statement of Comprehensive Income and Consolidated Balance Sheet.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are also subject to market risk exposure related to volatility in the prices of aluminum, one of the principal raw materials used for
our manufacturing. The commodities markets, which include the aluminum industry, are highly cyclical in nature, and as a result, prices
can be volatile. Commodity costs are influenced by numerous factors beyond our control, including general economic conditions, the availability
of raw materials, competition, labor costs, freight and transportation costs, production costs, import duties and other trade restrictions.
Our selling prices are also impacted by changes in commodity costs base our pricing of aluminum products based on the quoted price on
the London Metals Exchange plus a manufacturing premium with the intention of aligning cost of our raw materials with selling prices
to attempt to pass commodity price changes through to our customers.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
cannot accurately estimate the impact a one percent change in the commodity costs of would have on our results of operation, as the change
in commodity costs would both impact the cost to purchase materials and our selling prices. The impact to our results of operations depends
on the conditions of the market for our products, which could impact our ability to pass commodities costs to our customers.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="pp_003"></span>Item
4. Controls and Procedures</b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
performed an evaluation required by Rules 13a-15 and 15d-15 of the Securities Exchange Act of 1934, as amended, under the supervision
and with the participation of our management, including our principal executive officer and principal financial officer, of our design
and operating effectiveness of the internal controls over financial reporting as of the end of the period covered by this Quarterly Report.
Based on this evaluation, our principal executive officer and principal financial officer concluded that our disclosure controls and
procedures as defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended, were effective as of June
30, 2026 in order to provide reasonable assurance that the information disclosed in our reports is recorded, processed, summarized, and
reported within the time periods specified in the SEC&#8217;s rules and forms and to provide reasonable assurance that such information
is accumulated and communicated to our management, including our principal executive officer and principal financial officer, as appropriate
to allow timely decisions regarding required disclosure.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Changes
in Internal Control over Financial Reporting</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the quarter ended June 30, 2026, there has been no change in our internal control over financial reporting that has materially affected,
or is reasonably likely to materially affect, our internal control over financial reporting.</span></p>

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

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

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

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
time to time, the Company is involved in legal matters arising in the ordinary course of business. While management believes that such
matters are currently not material, there can be no assurance that matters arising in the ordinary course of business for which the Company
is, or could be, involved in litigation, will not have a material adverse effect on its business, financial condition or results of operations.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
have been no material changes to the risk factors previously disclosed in Part 1, Item 1A of our Annual Report on Form 10-K for the year
ended December 31, 2025, except as follows:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Risks
Related to Colombia and Other Countries Where We Operate</i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Our
business could be negatively impacted by political or economic tensions between Colombia and the United States.</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
business operations and financial performance could be adversely affected by political or economic tensions between the governments of
Colombia and its neighbor country Venezuela, and the United States, mostly influenced by differences in political orientation and policy
priorities between such country&#8217;s administrations. Given that our manufacturing facilities are based in Colombia and 96% of our
sales for the fiscal year ended December 31, 2025, occurred in the United States, any deterioration in diplomatic or economic relations
between the countries, including the imposition of trade restrictions, tariffs, sanctions, limitations on cross-border payments, or other
measures resulting from political disagreements between the President of Colombia Gustavo Petro, and the President of the United States
Donald Trump, could negatively affect our ability to conduct business in the U.S., increase our costs, or restrict access to financial
and commercial channels.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
April 2, 2026, the United States announced modifications to tariffs imposed under Section 232 of the Trade Expansion Act of 1962 on imports
of aluminum, steel, and certain derivative products, which became effective on April 6, 2026. These changes include, among other things,
applying tariffs to the full customs value of certain imported products and introducing a range of tariff rates depending on the composition
of such products, including a reduced tariff rate of approximately 10% for certain products manufactured abroad using U.S.-origin aluminum,
which were previously exempt.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Although
no &#8220;reciprocal&#8221; tariff initiative against Colombia is active as of the date of this report, there can be no assurance that
such measures will not be introduced in the future. Any such developments could have a material adverse effect on our revenues, profitability,
and overall business prospects.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="pp_006"></span>Item
2. Unregistered Sales of Equity Securities and Use of Proceeds</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
share repurchase activity for each of the three months in the period ended June 30, 2026, was as follows:</span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; width: 36%; font-weight: bold; text-align: center">Period</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; width: 1%; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; width: 12%; text-align: right"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Total Number </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>of Shares</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Purchased</b></span></p></td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; width: 1%; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; width: 12%; text-align: right"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Average </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Price Paid </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Per Share</b></span></p></td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; width: 1%; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; width: 12%; text-align: right"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Total Number </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>of Shares</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Purchased </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>as Part of</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Publicly</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Announced</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Plans or</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Programs</b></span></p></td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; width: 1%; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; width: 12%; text-align: right"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Approximate</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Dollar Value</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>of Shares that</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>May Yet be</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Purchased</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Under the</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Plans or</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Programs (1)</b></span></p></td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>April 2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"/><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"/><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"/><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"/><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Open market and privately negotiated purchases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">100</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">47.7</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>May 2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Open market and privately negotiated purchases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>June 2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Open market and privately negotiated purchases</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">-</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">-</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-left: 10pt"><b>Total</b></td><td><b>&#160;</b></td>
    <td style="text-align: left"><b>&#160;</b></td><td style="text-align: right"><b>100</b></td><td style="text-align: left"><b>&#160;</b></td><td><b>&#160;</b></td>
    <td style="text-align: left"><b>$</b></td><td style="text-align: right"><b>47.7</b></td><td style="text-align: left"><b>&#160;</b></td><td><b>&#160;</b></td>
    <td style="text-align: left"><b>&#160;</b></td><td style="text-align: right"><b>-</b></td><td style="text-align: left"><b>&#160;</b></td><td><b>&#160;</b></td>
    <td style="text-align: left"><b>&#160;</b></td><td style="text-align: right"><b>92,547,649</b></td><td style="text-align: left"><b>&#160;</b></td></tr>
  </table>


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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
    November 3, 2022, the Board of Directors authorized the purchase of up to $50 million of the Company&#8217;s common shares, which
    authorization was subsequently increased to up to $100 million in November 2024. On November 5, 2025, the Board of Directors approved
    an increase in the share repurchase authorization to $150 million. In February 2026, the Board approved another program expansion
    to $250 million. The program does not obligate the Company to acquire a minimum number of shares. Under the program, shares may be
    repurchased in privately negotiated and/or open market transactions, including under plans complying with Rule 10b5-1 under the Exchange
    Act.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="pp_007"></span>Item
5. Other Information</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three months ended June 30, 2026, no director or officer <span id="xdx_900_eecd--Rule10b51ArrAdoptedFlag_dbF_c20260401__20260630_zOOFpdqYE2x2" class="xdx_phnt_RGlzY2xvc3VyZSAtIEluc2lkZXIgVHJhZGluZyBBcnJhbmdlbWVudHMA"><span id="xdx_906_eecd--NonRule10b51ArrAdoptedFlag_dbF_c20260401__20260630_z6nzwGm9i2Ma" class="xdx_phnt_RGlzY2xvc3VyZSAtIEluc2lkZXIgVHJhZGluZyBBcnJhbmdlbWVudHMA"><ix:nonNumeric contextRef="From2026-04-012026-06-30" format="ixt:booleanfalse" id="Fact001610" name="ecd:Rule10b51ArrAdoptedFlag"><ix:nonNumeric contextRef="From2026-04-012026-06-30" format="ixt:booleanfalse" id="Fact001611" name="ecd:NonRule10b51ArrAdoptedFlag">adopted</ix:nonNumeric></ix:nonNumeric></span></span> or <span id="xdx_909_eecd--Rule10b51ArrTrmntdFlag_dbF_c20260401__20260630_zNbVXeg9taXc" class="xdx_phnt_RGlzY2xvc3VyZSAtIEluc2lkZXIgVHJhZGluZyBBcnJhbmdlbWVudHMA"><span id="xdx_906_eecd--NonRule10b51ArrTrmntdFlag_dbF_c20260401__20260630_zqGOdUalKpH8" class="xdx_phnt_RGlzY2xvc3VyZSAtIEluc2lkZXIgVHJhZGluZyBBcnJhbmdlbWVudHMA"><ix:nonNumeric contextRef="From2026-04-012026-06-30" format="ixt:booleanfalse" id="Fact001612" name="ecd:Rule10b51ArrTrmntdFlag"><ix:nonNumeric contextRef="From2026-04-012026-06-30" format="ixt:booleanfalse" id="Fact001613" name="ecd:NonRule10b51ArrTrmntdFlag">terminated</ix:nonNumeric></ix:nonNumeric></span></span> any (i) &#8220;Rule 10b5-1 trading arrangement,&#8221;
as defined in Item 408(a) of Regulation S-K intending to satisfy the affirmative defense conditions of Rule 10b5&#8211;1(c) or (ii) &#8220;non-Rule
10b5-1 trading arrangement,&#8221; as defined in Item 408(a) of Regulation S-K.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="pp_008"></span>Item
6. Exhibits</b></span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Exhibit
    No.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Description</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">31.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="ex31-1.htm">Certification of Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">31.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="ex31-2.htm">Certification of Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">32</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="ex32.htm">Certification of Chief Executive Officers pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Financial
    statements from the Quarterly Report on Form 10-Q of Tecnoglass Holdings Inc. for the quarter ended June 30, 2026, formatted in XBRL:
    (i) Condensed Consolidated Balance Sheets, (ii) Condensed Consolidated Statements of Operations, (iii) Condensed Consolidated Statement
    of Changes in Stockholders&#8217; Equity, (iv) Condensed Consolidated Statement of Cash Flows and (v) Notes to Unaudited Condensed
    Consolidated Financial Statements, as blocks of text and in detail.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.INS</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline
    XBRL Instance Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.SCH</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline
    XBRL Taxonomy Extension Schema Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.CAL</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline
    XBRL Taxonomy Extension Calculation Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.DEF</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline
    XBRL Taxonomy Extension Definition Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.LAB</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline
    XBRL Taxonomy Extension Label Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.PRE</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline
    XBRL Taxonomy Extension Presentation Linkbase Document</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">104</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cover
    Page Interactive Data File (embedded within the Inline XBRL document)</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
accordance with the requirements of the Exchange Act, the registrant caused this report to be signed on its behalf by the undersigned,
thereunto duly authorized.</span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">TECNOGLASS
    HOLDINGS INC.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 3%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 47%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</span></td>
    <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Jose M. Daes</i></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Jose
    M. Daes</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Executive Officer</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal
    executive officer)</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</span></td>
    <td style="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Santiago Giraldo</i></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Santiago
    Giraldo</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Financial Officer</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal
    financial and accounting officer)</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
    August 6, 2026</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<!-- Field: Page; Sequence: 26; Options: Last -->
    <div style="border-bottom: Black 1pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="text-align: center; width: 100%"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->26<!-- Field: /Sequence --></td></tr></table></div>
    <!-- Field: /Page -->

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

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



</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>ex31-1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right; text-indent: 29.7pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
31.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right; text-indent: 29.7pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CERTIFICATION
OF CHIEF EXECUTIVE OFFICER</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>PURSUANT
TO SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I,
Jose M. Daes, certify that:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">1.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I
    have reviewed this quarterly report on Form 10-Q of Tecnoglass Holdings Inc.;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary
    to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to
    the period covered by this quarterly report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, the financial statements, and other financial information included in this quarterly 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 quarterly report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures
    (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange
    Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision,
    to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others
    within those entities, particularly during the period in which this report is being prepared;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our
    supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements
    for external purposes in accordance with generally accepted accounting principles;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">c)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Evaluated
    the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented in this report our conclusions about
    the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">d)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Disclosed
    in this quarterly report any change in the registrant&rsquo;s internal control over financial reporting that occurred during the
    registrant&rsquo;s most recent fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of an annual report) that
    has materially affected, or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial reporting;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over
    financial reporting, to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors (or
    persons performing the equivalent functions):</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">All
    significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are
    reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report financial information;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Any
    fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&rsquo;s
    internal control over financial reporting.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
August 6, 2026</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Jose M. Daes</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Jose
    M. Daes</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Executive Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"></FONT></P>

<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-top: 0pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>ex31-2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
31.2</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CERTIFICATION
OF CHIEF FINANCIAL OFFICER</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>PURSUANT
TO SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I,
Santiago Giraldo, certify that:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">1.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I
    have reviewed this quarterly report on Form 10-Q of Tecnoglass Holdings Inc.;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary
    to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to
    the period covered by this quarterly report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on my knowledge, the financial statements, and other financial information included in this quarterly 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 quarterly report;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures
    (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange
    Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision,
    to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others
    within those entities, particularly during the period in which this quarterly report is being prepared;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Designed
    such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our
    supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements
    for external purposes in accordance with generally accepted accounting principles;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">c)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Evaluated
    the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented in this quarterly report our conclusions
    about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such
    evaluation; and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">d)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Disclosed
    in this report any change in the registrant&rsquo;s internal control over financial reporting that occurred during the registrant&rsquo;s
    most recent fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of an annual report) that has materially affected,
    or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial reporting; and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
    registrant&rsquo;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over
    financial reporting, to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors (or
    persons performing the equivalent functions):</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">All
    significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are
    reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report financial information;
    and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Any
    fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&rsquo;s
    internal control over financial reporting.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
August 6, 2026</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Santiago Giraldo</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Santiago
    Giraldo</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Financial Officer</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal
    financial and accounting officer)</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"></FONT></P>

<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-top: 0pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32
<SEQUENCE>4
<FILENAME>ex32.htm
<DESCRIPTION>EX-32
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
32</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CERTIFICATION
PURSUANT TO</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>18
U.S.C. SECTION 1350</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>AS
ADOPTED PURSUANT TO</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>SECTION
906 OF THE SARBANES-OXLEY ACT OF 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
connection with the Quarterly Report of Tecnoglass Holdings Inc. (the &ldquo;Company&rdquo;) on Form 10-Q for the period ended June 30,
2026 as filed with the Securities and Exchange Commission (the &ldquo;Report&rdquo;), the undersigned, in the capacities and on the date
indicated below, hereby certifies pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of
2002, that:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">1.
The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.
The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations
of the Company.</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Dated
August 6, 2026</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 3%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</FONT></TD>
    <TD STYLE="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif; width: 47%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Jose M. Daes</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Jose
    M. Daes</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Executive Officer</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal
    executive officer)</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</FONT></TD>
    <TD STYLE="border-bottom: black 1pt solid; font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Santiago Giraldo</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Santiago
    Giraldo</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Financial Officer</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal
    financial and accounting officer)</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"></P>

<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-top: 0pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>5
<FILENAME>tgls-20260630.xsd
<DESCRIPTION>XBRL SCHEMA FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" ?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.5a -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
    <!-- Field: Doc-Info; Name: Misc; Value: 96Mps7xRiXgen8uDanwsWaeP6bP9z5Z8aekhvWB2bVmKzywpy2Vv0S3bsDFWwYoD -->
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2026" xmlns:us-gaap="http://fasb.org/us-gaap/2026" xmlns:srt="http://fasb.org/srt/2026" xmlns:srt-types="http://fasb.org/srt-types/2026" xmlns:ecd="http://xbrl.sec.gov/ecd/2026" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:TGLS="http://tecnoglass.com/20260630" elementFormDefault="qualified" targetNamespace="http://tecnoglass.com/20260630">
    <annotation>
      <appinfo>
        <link:roleType roleURI="http://tecnoglass.com/role/Cover" id="Cover">
          <link:definition>00000001 - Document - Cover</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/BalanceSheets" id="BalanceSheets">
          <link:definition>00000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/BalanceSheetsParenthetical" id="BalanceSheetsParenthetical">
          <link:definition>00000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome" id="StatementsOfOperationsAndOtherComprehensiveIncome">
          <link:definition>00000004 - Statement - Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/StatementsOfCashFlows" id="StatementsOfCashFlows">
          <link:definition>00000005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquity" id="StatementsOfShareholdersEquity">
          <link:definition>00000006 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical" id="StatementsOfShareholdersEquityParenthetical">
          <link:definition>00000007 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) (Parenthetical)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/General" id="General">
          <link:definition>999013 - Disclosure - General</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" id="BasisOfPresentationAndSummaryOfSignificantAccountingPolicies">
          <link:definition>999014 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/Acquisitions" id="Acquisitions">
          <link:definition>999015 - Disclosure - Acquisitions</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/InventoriesNet" id="InventoriesNet">
          <link:definition>999016 - Disclosure - Inventories, net</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" id="RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities">
          <link:definition>999017 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwill" id="IntangibleAssetsAndGoodwill">
          <link:definition>999018 - Disclosure - Intangible Assets and Goodwill</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/SupplierFinanceProgram" id="SupplierFinanceProgram">
          <link:definition>999019 - Disclosure - Supplier Finance Program</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/Debt" id="Debt">
          <link:definition>999020 - Disclosure - Debt</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements" id="DerivativeFinancialInstrumentsAndFairValueMeasurements">
          <link:definition>999021 - Disclosure - Derivative Financial Instruments and Fair Value Measurements</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/IncomeTaxes" id="IncomeTaxes">
          <link:definition>999022 - Disclosure - Income Taxes</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/RelatedParties" id="RelatedParties">
          <link:definition>999023 - Disclosure - Related Parties</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ShareholdersEquity" id="ShareholdersEquity">
          <link:definition>999024 - Disclosure - Shareholders&#8217; Equity</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
          <link:definition>999025 - Disclosure - Commitments and Contingencies</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" id="BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies">
          <link:definition>999026 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" id="BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables">
          <link:definition>999027 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/AcquisitionsTables" id="AcquisitionsTables">
          <link:definition>999028 - Disclosure - Acquisitions (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/InventoriesNetTables" id="InventoriesNetTables">
          <link:definition>999029 - Disclosure - Inventories, net (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" id="RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables">
          <link:definition>999030 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables" id="IntangibleAssetsAndGoodwillTables">
          <link:definition>999031 - Disclosure - Intangible Assets and Goodwill (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/DebtTables" id="DebtTables">
          <link:definition>999032 - Disclosure - Debt (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" id="DerivativeFinancialInstrumentsAndFairValueMeasurementsTables">
          <link:definition>999033 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/IncomeTaxesTables" id="IncomeTaxesTables">
          <link:definition>999034 - Disclosure - Income Taxes (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/RelatedPartiesTables" id="RelatedPartiesTables">
          <link:definition>999035 - Disclosure - Related Parties (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ShareholdersEquityTables" id="ShareholdersEquityTables">
          <link:definition>999036 - Disclosure - Shareholders&#8217; Equity (Tables)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails" id="ScheduleOfProductWarrantyLiabilityDetails">
          <link:definition>999037 - Disclosure - Schedule of Product Warranty Liability (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" id="BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative">
          <link:definition>999038 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" id="ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails">
          <link:definition>999039 - Disclosure - Schedule of Purchase Price Allocation Consideration Transferred (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/AcquisitionsDetailsNarrative" id="AcquisitionsDetailsNarrative">
          <link:definition>999040 - Disclosure - Acquisitions (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfInventoriesDetails" id="ScheduleOfInventoriesDetails">
          <link:definition>999041 - Disclosure - Schedule of Inventories (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails" id="ScheduleOfDisaggregationByRevenueDetails">
          <link:definition>999042 - Disclosure - Schedule of Disaggregation by Revenue (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails" id="ScheduleOfGeographicInformationDetails">
          <link:definition>999043 - Disclosure - Schedule of Geographic Information (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails" id="ScheduleOfRevenuesDistributionByEndMarketDetails">
          <link:definition>999044 - Disclosure - Schedule of Revenues Distribution By End Market (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails" id="ScheduleOfTradeAccountsReceivableDetails">
          <link:definition>999045 - Disclosure - Schedule of Trade Accounts Receivable (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" id="ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails">
          <link:definition>999046 - Disclosure - Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" id="ScheduleOfContractAssetsAndLiabilitiesDetails">
          <link:definition>999047 - Disclosure - Schedule of Contract Assets and Liabilities (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" id="RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative">
          <link:definition>999048 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails" id="ScheduleOfFinite-livedIntangibleAssetsNetDetails">
          <link:definition>999049 - Disclosure - Schedule of Finite-Lived Intangible Assets, Net (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" id="ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails">
          <link:definition>999050 - Disclosure - Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" id="IntangibleAssetsAndGoodwillDetailsNarrative">
          <link:definition>999051 - Disclosure - Intangible Assets and Goodwill (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative" id="SupplierFinanceProgramDetailsNarrative">
          <link:definition>999052 - Disclosure - Supplier Finance Program (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails" id="ScheduleOfLongTermDebtDetails">
          <link:definition>999053 - Disclosure - Schedule of Long Term Debt (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" id="ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails">
          <link:definition>999054 - Disclosure - Schedule of Interest Income Expenses net and deferred cost (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails" id="ScheduleOfMaturitiesOfLongTermDebtDetails">
          <link:definition>999055 - Disclosure - Schedule of Maturities of Long Term Debt (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails" id="ScheduleOfFutureMinimumLeasePaymentsDetails">
          <link:definition>999056 - Disclosure - Schedule of Future Minimum Lease Payments (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/DebtDetailsNarrative" id="DebtDetailsNarrative">
          <link:definition>999057 - Disclosure - Debt (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails" id="ScheduleOfFairValueOfForeignCurrencyHedgesDetails">
          <link:definition>999058 - Disclosure - Schedule of Fair Value of Foreign Currency Hedges (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" id="ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails">
          <link:definition>999059 - Disclosure - Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" id="ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails">
          <link:definition>999060 - Disclosure - Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" id="DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative">
          <link:definition>999061 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails" id="ScheduleOfComponentsOfIncomeTaxExpenseDetails">
          <link:definition>999062 - Disclosure - Schedule of Components of Income Tax Expense (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/IncomeTaxesDetailsNarrative" id="IncomeTaxesDetailsNarrative">
          <link:definition>999063 - Disclosure - Income Taxes (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails" id="ScheduleOfRelatedPartiesDetails">
          <link:definition>999064 - Disclosure - Schedule of Related Parties (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails" id="ScheduleOfSaleToRelatedPartiesDetails">
          <link:definition>999065 - Disclosure - Schedule of Sale to Related Parties (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/RelatedPartiesDetailsNarrative" id="RelatedPartiesDetailsNarrative">
          <link:definition>999066 - Disclosure - Related Parties (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails" id="ScheduleOfEarningsPerShareBasicAndDilutedDetails">
          <link:definition>999067 - Disclosure - Schedule of Earnings Per Share, Basic and Diluted (Details)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative" id="ShareholdersEquityDetailsNarrative">
          <link:definition>999068 - Disclosure - Shareholders&#8217; Equity (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:roleType roleURI="http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative" id="CommitmentsAndContingenciesDetailsNarrative">
          <link:definition>999069 - Disclosure - Commitments and Contingencies (Details Narrative)</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:linkbaseRef xlink:type="simple" xlink:href="tgls-20260630_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Presentation Links" />
        <link:linkbaseRef xlink:type="simple" xlink:href="tgls-20260630_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Label Links" />
        <link:linkbaseRef xlink:type="simple" xlink:href="tgls-20260630_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Calculation Links" />
        <link:linkbaseRef xlink:type="simple" xlink:href="tgls-20260630_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Definition Links" />
      </appinfo>
    </annotation>
    <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
    <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
    <import namespace="http://xbrl.sec.gov/dei/2026" schemaLocation="https://xbrl.sec.gov/dei/2026/dei-2026.xsd" />
    <import namespace="http://fasb.org/us-gaap/2026" schemaLocation="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd" />
    <import namespace="http://fasb.org/us-types/2026" schemaLocation="https://xbrl.fasb.org/us-gaap/2026/elts/us-types-2026.xsd" />
    <import namespace="http://www.xbrl.org/dtr/type/2024-01-31" schemaLocation="https://www.xbrl.org/dtr/type/2024-01-31/types.xsd" />
    <import namespace="http://xbrl.sec.gov/ecd/2026" schemaLocation="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd" />
    <import namespace="http://xbrl.sec.gov/country/2026" schemaLocation="https://xbrl.sec.gov/country/2026/country-2026.xsd" />
    <import namespace="http://fasb.org/srt/2026" schemaLocation="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd" />
    <import namespace="http://fasb.org/srt-types/2026" schemaLocation="https://xbrl.fasb.org/srt/2026/elts/srt-types-2026.xsd" />
    <element id="TGLS_ExternalCustomersMember" name="ExternalCustomersMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_LegalReservesMember" name="LegalReservesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ContiglassAssetAcquisitionLLCMember" name="ContiglassAssetAcquisitionLLCMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ContractAssetsMember" name="ContractAssetsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ContractLiabilitiesMember" name="ContractLiabilitiesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FixedPriceContractsMember" name="FixedPriceContractsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ProductSalesMember" name="ProductSalesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_OtherMember" name="OtherMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ResidentialMember" name="ResidentialMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_CommercialMember" name="CommercialMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_SoftwareAndLicensesMember" name="SoftwareAndLicensesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" name="NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ContractBacklogMember" name="ContractBacklogMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_SupplierFinanceProgramMember" name="SupplierFinanceProgramMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_SeniorSecuredCreditFacilityMember" name="SeniorSecuredCreditFacilityMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ForeignCurrencyNonDeliveryForwardsMember" name="ForeignCurrencyNonDeliveryForwardsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_InterestRateSwapContractsMember" name="InterestRateSwapContractsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_OtherCurrentAssetMember" name="OtherCurrentAssetMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" name="InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember" name="InterestExpenseNetOfDeferredCostOfFinancingMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_AlutraficLedSASMember" name="AlutraficLedSASMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_StudioAvantiSASMember" name="StudioAvantiSASMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_PrismaGlassLLCMember" name="PrismaGlassLLCMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_VidrioAndinoMember" name="VidrioAndinoMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_SalesToOtherRelatedPartiesMember" name="SalesToOtherRelatedPartiesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FundacionTecnoglassMember" name="FundacionTecnoglassMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_CEOAndCOOMember" name="CEOAndCOOMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_SantaMariaDelMarSASMember" name="SantaMariaDelMarSASMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_StormArmourSolutionsLLCMember" name="StormArmourSolutionsLLCMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ZofracostaSAMember" name="ZofracostaSAMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_QuarterlyRateMember" name="QuarterlyRateMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_AnnualBasisMember" name="AnnualBasisMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FebruaryTwentyEightThousandThirtyThreeMember" name="FebruaryTwentyEightThousandThirtyThreeMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ThroughTwoThousandTwentyEightMember" name="ThroughTwoThousandTwentyEightMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_LegalReserves" name="LegalReserves" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_OtherOperatingIncomeLoss" name="OtherOperatingIncomeLoss" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_EquityMethodIncome" name="EquityMethodIncome" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_InterestExpenseAndDeferredCostOfFinancing" name="InterestExpenseAndDeferredCostOfFinancing" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_DeferredCostOfFinancing" name="DeferredCostOfFinancing" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_RealizedGainOnDerivativeInstruments" name="RealizedGainOnDerivativeInstruments" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract" name="CashPaidDuringPeriodForInterestAndTaxesAbstract" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_AccountPayableForBusinessAcquisition" name="AccountPayableForBusinessAcquisition" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" name="OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" name="OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" name="RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" name="ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" name="ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" name="ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" name="ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock" name="ScheduleOfSaleToRelatedPartyTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_RecoveryOfPreviouslyPaidImportTariffs" name="RecoveryOfPreviouslyPaidImportTariffs" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredAbstract" name="ScheduleOfPurchasePriceAllocationConsiderationTransferredAbstract" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable" name="ScheduleOfPurchasePriceAllocationConsiderationTransferredTable" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" />
    <element id="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_WorkingCapitalAdjustment" name="WorkingCapitalAdjustment" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_InventoryPackingMaterialGross" name="InventoryPackingMaterialGross" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_NetContractLiabilitiesAssets" name="NetContractLiabilitiesAssets" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_BillingsInExcessOfCosts" name="BillingsInExcessOfCosts" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesAbstract" name="RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesAbstract" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" name="RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" />
    <element id="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" name="FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FinanceLeaseDebt" name="FinanceLeaseDebt" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_SeniorSecuredCreditFacility" name="SeniorSecuredCreditFacility" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_DeferredCostsOfFinancing" name="DeferredCostsOfFinancing" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_DerivativeFinancialInstrumentGain" name="DerivativeFinancialInstrumentGain" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing" name="InterestIncomeExpenseNetAndDeferredCostOfFinancing" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour" name="FinanceLeaseLiabilityPaymentsDueAfterYearFour" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_TerminationCosts" name="TerminationCosts" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_DeductedFromProceedsFromIssuanceOfDebt" name="DeductedFromProceedsFromIssuanceOfDebt" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" name="FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FinanceLeaseShortTermDebt" name="FinanceLeaseShortTermDebt" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FinanceLeaseLongTermDebt" name="FinanceLeaseLongTermDebt" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" name="FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" name="FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" name="NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_StatementOfBalanceSheetLocationAxis" name="StatementOfBalanceSheetLocationAxis" abstract="true" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" />
    <element id="TGLS_StatementOfBalanceSheetLocationDomain" name="StatementOfBalanceSheetLocationDomain" abstract="true" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_DerivativeGainLossesOnDerivativeNet" name="DerivativeGainLossesOnDerivativeNet" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_CashContributionsForSocialCauses" name="CashContributionsForSocialCauses" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_PurchasePriceOfFuel" name="PurchasePriceOfFuel" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_PremiumClosingStockPercentage" name="PremiumClosingStockPercentage" nillable="true" xbrli:periodType="instant" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_ExpectedOwnershipPercentage" name="ExpectedOwnershipPercentage" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_FutureAdditionalContributionAmount" name="FutureAdditionalContributionAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="TGLS_EffectOfDilutiveSecuritiesAndStockDividend" name="EffectOfDilutiveSecuritiesAndStockDividend" nillable="true" xbrli:periodType="duration" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>tgls-20260630_cal.xml
<DESCRIPTION>XBRL CALCULATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.5a -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Cover" roleURI="http://tecnoglass.com/role/Cover" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BalanceSheets" roleURI="http://tecnoglass.com/role/BalanceSheets" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BalanceSheetsParenthetical" roleURI="http://tecnoglass.com/role/BalanceSheetsParenthetical" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfOperationsAndOtherComprehensiveIncome" roleURI="http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfCashFlows" roleURI="http://tecnoglass.com/role/StatementsOfCashFlows" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfShareholdersEquity" roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquity" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfShareholdersEquityParenthetical" roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#General" roleURI="http://tecnoglass.com/role/General" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Acquisitions" roleURI="http://tecnoglass.com/role/Acquisitions" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#InventoriesNet" roleURI="http://tecnoglass.com/role/InventoriesNet" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwill" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwill" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#SupplierFinanceProgram" roleURI="http://tecnoglass.com/role/SupplierFinanceProgram" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Debt" roleURI="http://tecnoglass.com/role/Debt" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurements" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxes" roleURI="http://tecnoglass.com/role/IncomeTaxes" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedParties" roleURI="http://tecnoglass.com/role/RelatedParties" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquity" roleURI="http://tecnoglass.com/role/ShareholdersEquity" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#CommitmentsAndContingencies" roleURI="http://tecnoglass.com/role/CommitmentsAndContingencies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#AcquisitionsTables" roleURI="http://tecnoglass.com/role/AcquisitionsTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#InventoriesNetTables" roleURI="http://tecnoglass.com/role/InventoriesNetTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwillTables" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DebtTables" roleURI="http://tecnoglass.com/role/DebtTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxesTables" roleURI="http://tecnoglass.com/role/IncomeTaxesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedPartiesTables" roleURI="http://tecnoglass.com/role/RelatedPartiesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquityTables" roleURI="http://tecnoglass.com/role/ShareholdersEquityTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfProductWarrantyLiabilityDetails" roleURI="http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" roleURI="http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#AcquisitionsDetailsNarrative" roleURI="http://tecnoglass.com/role/AcquisitionsDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfInventoriesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfInventoriesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfDisaggregationByRevenueDetails" roleURI="http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfGeographicInformationDetails" roleURI="http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfRevenuesDistributionByEndMarketDetails" roleURI="http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfTradeAccountsReceivableDetails" roleURI="http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" roleURI="http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfContractAssetsAndLiabilitiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFinite-livedIntangibleAssetsNetDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwillDetailsNarrative" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#SupplierFinanceProgramDetailsNarrative" roleURI="http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" roleURI="http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfMaturitiesOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFutureMinimumLeasePaymentsDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DebtDetailsNarrative" roleURI="http://tecnoglass.com/role/DebtDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFairValueOfForeignCurrencyHedgesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" roleURI="http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfComponentsOfIncomeTaxExpenseDetails" roleURI="http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxesDetailsNarrative" roleURI="http://tecnoglass.com/role/IncomeTaxesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfRelatedPartiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfSaleToRelatedPartiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedPartiesDetailsNarrative" roleURI="http://tecnoglass.com/role/RelatedPartiesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfEarningsPerShareBasicAndDilutedDetails" roleURI="http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquityDetailsNarrative" roleURI="http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#CommitmentsAndContingenciesDetailsNarrative" roleURI="http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Cover" xlink:title="00000001 - Document - Cover" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BalanceSheets" xlink:title="00000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaapShortTermInvestments" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapShortTermInvestments" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherReceivablesNetCurrent" xlink:label="loc_us-gaapOtherReceivablesNetCurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapOtherReceivablesNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetCurrent" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapContractWithCustomerAssetNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaapOtherAssetsCurrent" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapOtherAssetsCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsNoncurrent" xlink:label="loc_us-gaapAssetsNoncurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaapAccountsReceivableNetNoncurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapAccountsReceivableNetNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaapDeferredIncomeTaxAssetsNet" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapDeferredIncomeTaxAssetsNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetNoncurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapContractWithCustomerAssetNetNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaapLongTermInvestments" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapLongTermInvestments" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaapOtherAssetsNoncurrent" />
      <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsNoncurrent" xlink:to="loc_us-gaapOtherAssetsNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapAssetsCurrent" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapAssetsNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtCurrent" xlink:label="loc_us-gaapDebtCurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapDebtCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="loc_us-gaapOtherLiabilitiesCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapOtherLiabilitiesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DividendsPayableCurrent" xlink:label="loc_us-gaapDividendsPayableCurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapDividendsPayableCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaapLiabilitiesNoncurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesNoncurrent" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesNoncurrent" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesNoncurrent" xlink:to="loc_us-gaapLongTermDebtNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLiabilitiesCurrent" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLiabilitiesNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaapPreferredStockValue" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapPreferredStockValue" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaapTreasuryStockValue" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapTreasuryStockValue" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_LegalReserves" xlink:label="loc_TGLSLegalReserves" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_TGLSLegalReserves" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapLiabilities" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome" xlink:title="00000004 - Statement - Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapGrossProfit" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapGrossProfit" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SellingExpense" xlink:label="loc_us-gaapSellingExpense" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapSellingExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaapGeneralAndAdministrativeExpense" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapGeneralAndAdministrativeExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapGrossProfit" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapOperatingExpenses" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherOperatingIncomeLoss" xlink:label="loc_TGLSOtherOperatingIncomeLoss" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_TGLSOtherOperatingIncomeLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapOperatingIncomeLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NonoperatingGainsLosses" xlink:label="loc_us-gaapNonoperatingGainsLosses" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapNonoperatingGainsLosses" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_EquityMethodIncome" xlink:label="loc_TGLSEquityMethodIncome" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_TGLSEquityMethodIncome" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestExpenseAndDeferredCostOfFinancing" xlink:label="loc_TGLSInterestExpenseAndDeferredCostOfFinancing" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_TGLSInterestExpenseAndDeferredCostOfFinancing" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfCashFlows" xlink:title="00000005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapDepreciationAndAmortization" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="loc_us-gaapDeferredIncomeTaxesAndTaxCredits" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapDeferredIncomeTaxesAndTaxCredits" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaapIncomeLossFromEquityMethodInvestments" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncomeLossFromEquityMethodInvestments" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeferredCostOfFinancing" xlink:label="loc_TGLSDeferredCostOfFinancing" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_TGLSDeferredCostOfFinancing" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RealizedGainOnDerivativeInstruments" xlink:label="loc_TGLSRealizedGainOnDerivativeInstruments" />
      <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_TGLSRealizedGainOnDerivativeInstruments" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossUnrealized" />
      <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossUnrealized" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaapOtherNoncashIncomeExpense" />
      <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapOtherNoncashIncomeExpense" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable" />
      <link:calculationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories" />
      <link:calculationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInInventories" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense" />
      <link:calculationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets" />
      <link:calculationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:calculationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:calculationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInEmployeeRelatedLiabilities" />
      <link:calculationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInOtherOperatingLiabilities" />
      <link:calculationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInOtherOperatingLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInCommodityContractAssetsAndLiabilities" />
      <link:calculationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInDueToRelatedParties" xlink:label="loc_us-gaapIncreaseDecreaseInDueToRelatedParties" />
      <link:calculationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInDueToRelatedParties" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="loc_us-gaapProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquireInvestments" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfPropertyPlantAndEquipment" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsOfDividends" xlink:label="loc_us-gaapPaymentsOfDividends" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapPaymentsOfDividends" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsForRepurchaseOfEquity" xlink:label="loc_us-gaapPaymentsForRepurchaseOfEquity" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapPaymentsForRepurchaseOfEquity" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromIssuanceOfDebt" xlink:label="loc_us-gaapProceedsFromIssuanceOfDebt" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapProceedsFromIssuanceOfDebt" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RepaymentsOfDebt" xlink:label="loc_us-gaapRepaymentsOfDebt" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapRepaymentsOfDebt" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:type="arc" weight="1" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfShareholdersEquity" xlink:title="00000006 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical" xlink:title="00000007 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited) (Parenthetical)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/General" xlink:title="999013 - Disclosure - General" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" xlink:title="999014 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Acquisitions" xlink:title="999015 - Disclosure - Acquisitions" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/InventoriesNet" xlink:title="999016 - Disclosure - Inventories, net" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" xlink:title="999017 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwill" xlink:title="999018 - Disclosure - Intangible Assets and Goodwill" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/SupplierFinanceProgram" xlink:title="999019 - Disclosure - Supplier Finance Program" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Debt" xlink:title="999020 - Disclosure - Debt" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements" xlink:title="999021 - Disclosure - Derivative Financial Instruments and Fair Value Measurements" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxes" xlink:title="999022 - Disclosure - Income Taxes" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedParties" xlink:title="999023 - Disclosure - Related Parties" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquity" xlink:title="999024 - Disclosure - Shareholders&#8217; Equity" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/CommitmentsAndContingencies" xlink:title="999025 - Disclosure - Commitments and Contingencies" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" xlink:title="999026 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" xlink:title="999027 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/AcquisitionsTables" xlink:title="999028 - Disclosure - Acquisitions (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/InventoriesNetTables" xlink:title="999029 - Disclosure - Inventories, net (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" xlink:title="999030 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables" xlink:title="999031 - Disclosure - Intangible Assets and Goodwill (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DebtTables" xlink:title="999032 - Disclosure - Debt (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" xlink:title="999033 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxesTables" xlink:title="999034 - Disclosure - Income Taxes (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedPartiesTables" xlink:title="999035 - Disclosure - Related Parties (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquityTables" xlink:title="999036 - Disclosure - Shareholders&#8217; Equity (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails" xlink:title="999037 - Disclosure - Schedule of Product Warranty Liability (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:title="999038 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" xlink:title="999039 - Disclosure - Schedule of Purchase Price Allocation Consideration Transferred (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/AcquisitionsDetailsNarrative" xlink:title="999040 - Disclosure - Acquisitions (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfInventoriesDetails" xlink:title="999041 - Disclosure - Schedule of Inventories (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryGross" xlink:label="loc_us-gaapInventoryGross" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryRawMaterials" xlink:label="loc_us-gaapInventoryRawMaterials" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryGross" xlink:to="loc_us-gaapInventoryRawMaterials" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryWorkInProcess" xlink:label="loc_us-gaapInventoryWorkInProcess" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryGross" xlink:to="loc_us-gaapInventoryWorkInProcess" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaapInventoryFinishedGoods" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryGross" xlink:to="loc_us-gaapInventoryFinishedGoods" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherInventoriesSpareParts" xlink:label="loc_us-gaapOtherInventoriesSpareParts" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryGross" xlink:to="loc_us-gaapOtherInventoriesSpareParts" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InventoryPackingMaterialGross" xlink:label="loc_TGLSInventoryPackingMaterialGross" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryGross" xlink:to="loc_TGLSInventoryPackingMaterialGross" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryNet" xlink:to="loc_us-gaapInventoryGross" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryValuationReserves" xlink:label="loc_us-gaapInventoryValuationReserves" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapInventoryNet" xlink:to="loc_us-gaapInventoryValuationReserves" xlink:type="arc" weight="-1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails" xlink:title="999042 - Disclosure - Schedule of Disaggregation by Revenue (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails" xlink:title="999043 - Disclosure - Schedule of Geographic Information (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails" xlink:title="999044 - Disclosure - Schedule of Revenues Distribution By End Market (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails" xlink:title="999045 - Disclosure - Schedule of Trade Accounts Receivable (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="loc_us-gaapAccountsReceivableGrossCurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccountsReceivableNetCurrent" xlink:to="loc_us-gaapAccountsReceivableGrossCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccountsReceivableNetCurrent" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccountsReceivableNet" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaapAccountsReceivableNetNoncurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccountsReceivableNet" xlink:to="loc_us-gaapAccountsReceivableNetNoncurrent" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" xlink:title="999046 - Disclosure - Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" xlink:title="999047 - Disclosure - Schedule of Contract Assets and Liabilities (Details)">
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NetContractLiabilitiesAssets" xlink:label="loc_TGLSNetContractLiabilitiesAssets" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetCurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_TGLSNetContractLiabilitiesAssets" xlink:to="loc_us-gaapContractWithCustomerAssetNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetNoncurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_TGLSNetContractLiabilitiesAssets" xlink:to="loc_us-gaapContractWithCustomerAssetNetNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_TGLSNetContractLiabilitiesAssets" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_TGLSNetContractLiabilitiesAssets" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetGrossCurrent" xlink:label="loc_us-gaapContractWithCustomerAssetGrossCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaapUnbilledReceivablesCurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapContractWithCustomerAssetGrossCurrent" xlink:to="loc_us-gaapUnbilledReceivablesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ConstructionContractorReceivableRetainage" xlink:label="loc_us-gaapConstructionContractorReceivableRetainage" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapContractWithCustomerAssetGrossCurrent" xlink:to="loc_us-gaapConstructionContractorReceivableRetainage" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" xlink:title="999048 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails" xlink:title="999049 - Disclosure - Schedule of Finite-Lived Intangible Assets, Net (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" xlink:title="999050 - Disclosure - Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" xlink:label="loc_TGLSFiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:to="loc_TGLSFiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:title="999051 - Disclosure - Intangible Assets and Goodwill (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative" xlink:title="999052 - Disclosure - Supplier Finance Program (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails" xlink:title="999053 - Disclosure - Schedule of Long Term Debt (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaapDebtInstrumentCarryingAmount" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaapLineOfCredit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDebtInstrumentCarryingAmount" xlink:to="loc_us-gaapLineOfCredit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseDebt" xlink:label="loc_TGLSFinanceLeaseDebt" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDebtInstrumentCarryingAmount" xlink:to="loc_TGLSFinanceLeaseDebt" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLongTermDebtCurrent" xlink:label="loc_us-gaapOtherLongTermDebtCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDebtInstrumentCarryingAmount" xlink:to="loc_us-gaapOtherLongTermDebtCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacility" xlink:label="loc_TGLSSeniorSecuredCreditFacility" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDebtInstrumentCarryingAmount" xlink:to="loc_TGLSSeniorSecuredCreditFacility" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredCostsCurrent" xlink:label="loc_us-gaapDeferredCostsCurrent" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDebtInstrumentCarryingAmount" xlink:to="loc_us-gaapDeferredCostsCurrent" xlink:type="arc" weight="-1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" xlink:title="999054 - Disclosure - Schedule of Interest Income Expenses net and deferred cost (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails" xlink:title="999055 - Disclosure - Schedule of Maturities of Long Term Debt (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLongTermDebt" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLongTermDebt" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLongTermDebt" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLongTermDebt" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLongTermDebt" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails" xlink:title="999056 - Disclosure - Schedule of Future Minimum Lease Payments (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DebtDetailsNarrative" xlink:title="999057 - Disclosure - Debt (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails" xlink:title="999058 - Disclosure - Schedule of Fair Value of Foreign Currency Hedges (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" xlink:title="999059 - Disclosure - Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" xlink:title="999060 - Disclosure - Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" xlink:title="999061 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails" xlink:title="999062 - Disclosure - Schedule of Components of Income Tax Expense (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxesDetailsNarrative" xlink:title="999063 - Disclosure - Income Taxes (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails" xlink:title="999064 - Disclosure - Schedule of Related Parties (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails" xlink:title="999065 - Disclosure - Schedule of Sale to Related Parties (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedPartiesDetailsNarrative" xlink:title="999066 - Disclosure - Related Parties (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails" xlink:title="999067 - Disclosure - Schedule of Earnings Per Share, Basic and Diluted (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative" xlink:title="999068 - Disclosure - Shareholders&#8217; Equity (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:title="999069 - Disclosure - Commitments and Contingencies (Details Narrative)" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>tgls-20260630_def.xml
<DESCRIPTION>XBRL DEFINITION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.5a -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Cover" roleURI="http://tecnoglass.com/role/Cover" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BalanceSheets" roleURI="http://tecnoglass.com/role/BalanceSheets" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BalanceSheetsParenthetical" roleURI="http://tecnoglass.com/role/BalanceSheetsParenthetical" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfOperationsAndOtherComprehensiveIncome" roleURI="http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfCashFlows" roleURI="http://tecnoglass.com/role/StatementsOfCashFlows" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfShareholdersEquity" roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquity" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfShareholdersEquityParenthetical" roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#General" roleURI="http://tecnoglass.com/role/General" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Acquisitions" roleURI="http://tecnoglass.com/role/Acquisitions" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#InventoriesNet" roleURI="http://tecnoglass.com/role/InventoriesNet" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwill" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwill" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#SupplierFinanceProgram" roleURI="http://tecnoglass.com/role/SupplierFinanceProgram" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Debt" roleURI="http://tecnoglass.com/role/Debt" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurements" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxes" roleURI="http://tecnoglass.com/role/IncomeTaxes" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedParties" roleURI="http://tecnoglass.com/role/RelatedParties" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquity" roleURI="http://tecnoglass.com/role/ShareholdersEquity" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#CommitmentsAndContingencies" roleURI="http://tecnoglass.com/role/CommitmentsAndContingencies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#AcquisitionsTables" roleURI="http://tecnoglass.com/role/AcquisitionsTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#InventoriesNetTables" roleURI="http://tecnoglass.com/role/InventoriesNetTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwillTables" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DebtTables" roleURI="http://tecnoglass.com/role/DebtTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxesTables" roleURI="http://tecnoglass.com/role/IncomeTaxesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedPartiesTables" roleURI="http://tecnoglass.com/role/RelatedPartiesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquityTables" roleURI="http://tecnoglass.com/role/ShareholdersEquityTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfProductWarrantyLiabilityDetails" roleURI="http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" roleURI="http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#AcquisitionsDetailsNarrative" roleURI="http://tecnoglass.com/role/AcquisitionsDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfInventoriesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfInventoriesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfDisaggregationByRevenueDetails" roleURI="http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfGeographicInformationDetails" roleURI="http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfRevenuesDistributionByEndMarketDetails" roleURI="http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfTradeAccountsReceivableDetails" roleURI="http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" roleURI="http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfContractAssetsAndLiabilitiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFinite-livedIntangibleAssetsNetDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwillDetailsNarrative" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#SupplierFinanceProgramDetailsNarrative" roleURI="http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" roleURI="http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfMaturitiesOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFutureMinimumLeasePaymentsDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DebtDetailsNarrative" roleURI="http://tecnoglass.com/role/DebtDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFairValueOfForeignCurrencyHedgesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" roleURI="http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfComponentsOfIncomeTaxExpenseDetails" roleURI="http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxesDetailsNarrative" roleURI="http://tecnoglass.com/role/IncomeTaxesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfRelatedPartiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfSaleToRelatedPartiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedPartiesDetailsNarrative" roleURI="http://tecnoglass.com/role/RelatedPartiesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfEarningsPerShareBasicAndDilutedDetails" roleURI="http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquityDetailsNarrative" roleURI="http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#CommitmentsAndContingenciesDetailsNarrative" roleURI="http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpExecutiveCategoriesOnly" roleURI="http://xbrl.sec.gov/ecd/role/PvpExecutiveCategoriesOnly" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpAdjustmentsOnly" roleURI="http://xbrl.sec.gov/ecd/role/PvpAdjustmentsOnly" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#IndividualsOnly" roleURI="http://xbrl.sec.gov/ecd/role/IndividualsOnly" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#AwardTypeOnly" roleURI="http://xbrl.sec.gov/ecd/AwardTypeOnly" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#TradingArrangmentsOnly" roleURI="http://xbrl.sec.gov/ecd/role/TradingArrangementsOnly" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" arcroleURI="http://xbrl.org/int/dim/arcrole/all" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#notAll" arcroleURI="http://xbrl.org/int/dim/arcrole/notAll" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Cover" xlink:title="00000001 - Document - Cover" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BalanceSheets" xlink:title="00000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NonrelatedPartyMember" xlink:label="loc_us-gaapNonrelatedPartyMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapNonrelatedPartyMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaapAssetsAbstract_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapAssetsAbstract_70" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaapAssetsCurrentAbstract_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsAbstract_70" xlink:to="loc_us-gaapAssetsCurrentAbstract_70" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue_70" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaapShortTermInvestments_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapShortTermInvestments_70" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapAccountsReceivableNetCurrent_70" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherReceivablesNetCurrent" xlink:label="loc_us-gaapOtherReceivablesNetCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapOtherReceivablesNetCurrent_70" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapInventoryNet_70" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapContractWithCustomerAssetNetCurrent_70" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaapOtherAssetsCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapOtherAssetsCurrent_70" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsCurrentAbstract_70" xlink:to="loc_us-gaapAssetsCurrent_70" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsNoncurrentAbstract" xlink:label="loc_us-gaapAssetsNoncurrentAbstract_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsAbstract_70" xlink:to="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet_70" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaapAccountsReceivableNetNoncurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapAccountsReceivableNetNoncurrent_70" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaapDeferredIncomeTaxAssetsNet_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapDeferredIncomeTaxAssetsNet_70" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetNoncurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapContractWithCustomerAssetNetNoncurrent_70" xlink:type="arc" order="14" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill_70" xlink:type="arc" order="15" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapGoodwill_70" xlink:type="arc" order="16" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaapLongTermInvestments_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapLongTermInvestments_70" xlink:type="arc" order="17" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaapOtherAssetsNoncurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapOtherAssetsNoncurrent_70" xlink:type="arc" order="18" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsNoncurrent" xlink:label="loc_us-gaapAssetsNoncurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsNoncurrentAbstract_70" xlink:to="loc_us-gaapAssetsNoncurrent_70" xlink:type="arc" order="19" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAssetsAbstract_70" xlink:to="loc_us-gaapAssets_70" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_70" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaapLiabilitiesCurrentAbstract_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_70" xlink:to="loc_us-gaapLiabilitiesCurrentAbstract_70" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtCurrent" xlink:label="loc_us-gaapDebtCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_70" xlink:to="loc_us-gaapDebtCurrent_70" xlink:type="arc" order="23" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_70" xlink:to="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent_70" xlink:type="arc" order="24" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="loc_us-gaapOtherLiabilitiesCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_70" xlink:to="loc_us-gaapOtherLiabilitiesCurrent_70" xlink:type="arc" order="25" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DividendsPayableCurrent" xlink:label="loc_us-gaapDividendsPayableCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_70" xlink:to="loc_us-gaapDividendsPayableCurrent_70" xlink:type="arc" order="26" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_70" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent_70" xlink:type="arc" order="27" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_70" xlink:to="loc_us-gaapLiabilitiesCurrent_70" xlink:type="arc" order="28" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="loc_us-gaapLiabilitiesNoncurrentAbstract_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_70" xlink:to="loc_us-gaapLiabilitiesNoncurrentAbstract_70" xlink:type="arc" order="29" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilitiesNet_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract_70" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilitiesNet_70" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract_70" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent_70" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract_70" xlink:to="loc_us-gaapLongTermDebtNoncurrent_70" xlink:type="arc" order="32" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaapLiabilitiesNoncurrent_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract_70" xlink:to="loc_us-gaapLiabilitiesNoncurrent_70" xlink:type="arc" order="33" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_70" xlink:to="loc_us-gaapLiabilities_70" xlink:type="arc" order="34" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaapStockholdersEquityAbstract_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_70" xlink:to="loc_us-gaapStockholdersEquityAbstract_70" xlink:type="arc" order="35" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaapPreferredStockValue_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_us-gaapPreferredStockValue_70" xlink:type="arc" order="36" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_us-gaapCommonStockValue_70" xlink:type="arc" order="37" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaapTreasuryStockValue_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_us-gaapTreasuryStockValue_70" xlink:type="arc" order="38" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_LegalReserves" xlink:label="loc_TGLSLegalReserves_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_TGLSLegalReserves_70" xlink:type="arc" order="39" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_us-gaapAdditionalPaidInCapital_70" xlink:type="arc" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit_70" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax_70" xlink:type="arc" order="42" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStockholdersEquityAbstract_70" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_70" xlink:type="arc" order="43" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_70" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquity_70" xlink:type="arc" order="44" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome" xlink:title="00000004 - Statement - Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ExternalCustomersMember" xlink:label="loc_TGLSExternalCustomersMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_TGLSExternalCustomersMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerAbstract_130" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract_130" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold_130" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapGrossProfit_130" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaapOperatingExpensesAbstract_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapOperatingExpensesAbstract_130" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SellingExpense" xlink:label="loc_us-gaapSellingExpense_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingExpensesAbstract_130" xlink:to="loc_us-gaapSellingExpense_130" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaapGeneralAndAdministrativeExpense_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingExpensesAbstract_130" xlink:to="loc_us-gaapGeneralAndAdministrativeExpense_130" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingExpensesAbstract_130" xlink:to="loc_us-gaapOperatingExpenses_130" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherOperatingIncomeLoss" xlink:label="loc_TGLSOtherOperatingIncomeLoss_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapOperatingExpensesAbstract_130" xlink:to="loc_TGLSOtherOperatingIncomeLoss_130" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapOperatingIncomeLoss_130" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NonoperatingGainsLosses" xlink:label="loc_us-gaapNonoperatingGainsLosses_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapNonoperatingGainsLosses_130" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_EquityMethodIncome" xlink:label="loc_TGLSEquityMethodIncome_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_TGLSEquityMethodIncome_130" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax_130" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestExpenseAndDeferredCostOfFinancing" xlink:label="loc_TGLSInterestExpenseAndDeferredCostOfFinancing_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_TGLSInterestExpenseAndDeferredCostOfFinancing_130" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_130" xlink:type="arc" order="14" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit_130" xlink:type="arc" order="15" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapNetIncomeLoss_130" xlink:type="arc" order="16" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapEarningsPerShareBasic_130" xlink:type="arc" order="17" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapEarningsPerShareDiluted_130" xlink:type="arc" order="18" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic_130" xlink:type="arc" order="19" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding_130" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_130" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_130" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_130" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_130" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_130" xlink:type="arc" order="23" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_130" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_130" xlink:type="arc" order="24" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_130" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_130" xlink:type="arc" order="25" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfCashFlows" xlink:title="00000005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfShareholdersEquity" xlink:title="00000006 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapCommonStockMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="loc_us-gaapTreasuryStockCommonMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapTreasuryStockCommonMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaapAdditionalPaidInCapitalMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapAdditionalPaidInCapitalMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_LegalReservesMember" xlink:label="loc_TGLSLegalReservesMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_TGLSLegalReservesMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapRetainedEarningsMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquity_80" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding_80" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="loc_us-gaapTreasuryStockCommonShares_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapTreasuryStockCommonShares_80" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DividendsCommonStock" xlink:label="loc_us-gaapDividendsCommonStock_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDividendsCommonStock_80" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaapTreasuryStockValueAcquiredCostMethod_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapTreasuryStockValueAcquiredCostMethod_80" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaapTreasuryStockSharesAcquired_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapTreasuryStockSharesAcquired_80" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" xlink:label="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_80" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_80" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProfitLoss_80" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaapStockRepurchasedDuringPeriodValue_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockRepurchasedDuringPeriodValue_80" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaapStockRepurchasedDuringPeriodShares_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockRepurchasedDuringPeriodShares_80" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" xlink:label="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale_80" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_80" xlink:type="arc" order="13" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical" xlink:title="00000007 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited) (Parenthetical)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/General" xlink:title="999013 - Disclosure - General" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" xlink:title="999014 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Acquisitions" xlink:title="999015 - Disclosure - Acquisitions" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/InventoriesNet" xlink:title="999016 - Disclosure - Inventories, net" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" xlink:title="999017 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwill" xlink:title="999018 - Disclosure - Intangible Assets and Goodwill" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/SupplierFinanceProgram" xlink:title="999019 - Disclosure - Supplier Finance Program" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Debt" xlink:title="999020 - Disclosure - Debt" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements" xlink:title="999021 - Disclosure - Derivative Financial Instruments and Fair Value Measurements" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxes" xlink:title="999022 - Disclosure - Income Taxes" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedParties" xlink:title="999023 - Disclosure - Related Parties" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquity" xlink:title="999024 - Disclosure - Shareholders&#8217; Equity" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/CommitmentsAndContingencies" xlink:title="999025 - Disclosure - Commitments and Contingencies" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" xlink:title="999026 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" xlink:title="999027 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/AcquisitionsTables" xlink:title="999028 - Disclosure - Acquisitions (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/InventoriesNetTables" xlink:title="999029 - Disclosure - Inventories, net (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" xlink:title="999030 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember" xlink:label="loc_us-gaapReportableSegmentAggregationBeforeOtherOperatingSegmentMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_us-gaapReportableSegmentAggregationBeforeOtherOperatingSegmentMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueByLiabilityClassAxis" xlink:label="loc_us-gaapFairValueByLiabilityClassAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapFairValueByLiabilityClassAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:label="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFairValueByLiabilityClassAxis" xlink:to="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:label="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFairValueByLiabilityClassAxis" xlink:to="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractAssetsMember" xlink:label="loc_TGLSContractAssetsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:to="loc_TGLSContractAssetsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractLiabilitiesMember" xlink:label="loc_TGLSContractLiabilitiesMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:to="loc_TGLSContractLiabilitiesMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaapDisaggregationOfRevenueTableTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDisaggregationOfRevenueTableTextBlock_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="loc_us-gaapScheduleOfSegmentReportingInformationBySegmentTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapScheduleOfSegmentReportingInformationBySegmentTextBlock_50" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" xlink:label="loc_TGLSScheduleOfRevenuesDistributionByEndMarketTableTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSScheduleOfRevenuesDistributionByEndMarketTableTextBlock_50" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="loc_us-gaapScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_50" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" xlink:label="loc_TGLSScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_50" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock_50" xlink:type="arc" order="5" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables" xlink:title="999031 - Disclosure - Intangible Assets and Goodwill (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DebtTables" xlink:title="999032 - Disclosure - Debt (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" xlink:title="999033 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxesTables" xlink:title="999034 - Disclosure - Income Taxes (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedPartiesTables" xlink:title="999035 - Disclosure - Related Parties (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquityTables" xlink:title="999036 - Disclosure - Shareholders&#8217; Equity (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails" xlink:title="999037 - Disclosure - Schedule of Product Warranty Liability (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:title="999038 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" xlink:title="999039 - Disclosure - Schedule of Purchase Price Allocation Consideration Transferred (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:label="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RestatementAxis" xlink:label="loc_srtRestatementAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:to="loc_srtRestatementAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="loc_srtScenarioPreviouslyReportedMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtScenarioPreviouslyReportedMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:label="loc_srtRevisionOfPriorPeriodReclassificationAdjustmentMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtRevisionOfPriorPeriodReclassificationAdjustmentMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_50" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_50" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_50" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_50" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_50" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_50" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_50" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_50" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_50" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_50" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_50" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_50" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_50" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_50" xlink:type="arc" order="14" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_50" xlink:type="arc" order="15" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/AcquisitionsDetailsNarrative" xlink:title="999040 - Disclosure - Acquisitions (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaapBusinessAcquisitionLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContiglassAssetAcquisitionLLCMember" xlink:label="loc_TGLSContiglassAssetAcquisitionLLCMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:to="loc_TGLSContiglassAssetAcquisitionLLCMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationPriceOfAcquisitionExpected" xlink:label="loc_us-gaapBusinessCombinationPriceOfAcquisitionExpected_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationPriceOfAcquisitionExpected_60" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="loc_us-gaapBusinessAcquisitionCostOfAcquiredEntityTransactionCosts_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessAcquisitionCostOfAcquiredEntityTransactionCosts_60" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_WorkingCapitalAdjustment" xlink:label="loc_TGLSWorkingCapitalAdjustment_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_TGLSWorkingCapitalAdjustment_60" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife_60" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfInventoriesDetails" xlink:title="999041 - Disclosure - Schedule of Inventories (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails" xlink:title="999042 - Disclosure - Schedule of Disaggregation by Revenue (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtProductOrServiceAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FixedPriceContractsMember" xlink:label="loc_TGLSFixedPriceContractsMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSFixedPriceContractsMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ProductSalesMember" xlink:label="loc_TGLSProductSalesMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSProductSalesMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaapNumberOfReportableSegments_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapNumberOfReportableSegments_130" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails" xlink:title="999043 - Disclosure - Schedule of Geographic Information (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtStatementGeographicalAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_CO" xlink:label="loc_countryCO_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCO_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_US" xlink:label="loc_countryUS_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherMember" xlink:label="loc_TGLSOtherMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_TGLSOtherMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_170" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails" xlink:title="999044 - Disclosure - Schedule of Revenues Distribution By End Market (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtProductOrServiceAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ResidentialMember" xlink:label="loc_TGLSResidentialMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSResidentialMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CommercialMember" xlink:label="loc_TGLSCommercialMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSCommercialMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax_130" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails" xlink:title="999045 - Disclosure - Schedule of Trade Accounts Receivable (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" xlink:title="999046 - Disclosure - Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" xlink:title="999047 - Disclosure - Schedule of Contract Assets and Liabilities (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" xlink:title="999048 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:label="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementScenarioAxis" xlink:label="loc_srtStatementScenarioAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:to="loc_srtStatementScenarioAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srtScenarioUnspecifiedDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementScenarioAxis" xlink:to="loc_srtScenarioUnspecifiedDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srtScenarioUnspecifiedDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtStatementScenarioAxis" xlink:to="loc_srtScenarioUnspecifiedDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioForecastMember" xlink:label="loc_srtScenarioForecastMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtScenarioUnspecifiedDomain" xlink:to="loc_srtScenarioForecastMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaapContractWithCustomerLiabilityRevenueRecognized_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapContractWithCustomerLiabilityRevenueRecognized_90" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="loc_us-gaapRevenueRemainingPerformanceObligation_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenueRemainingPerformanceObligation_90" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="loc_us-gaapRevenueRemainingPerformanceObligationPercentage_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenueRemainingPerformanceObligationPercentage_90" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails" xlink:title="999049 - Disclosure - Schedule of Finite-Lived Intangible Assets, Net (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaapTradeNamesMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapTradeNamesMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SoftwareAndLicensesMember" xlink:label="loc_TGLSSoftwareAndLicensesMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_TGLSSoftwareAndLicensesMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" xlink:label="loc_TGLSNoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_TGLSNoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractBacklogMember" xlink:label="loc_TGLSContractBacklogMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_TGLSContractBacklogMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsGross_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsGross_110" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization_110" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet_110" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" xlink:title="999050 - Disclosure - Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:title="999051 - Disclosure - Intangible Assets and Goodwill (Details Narrative)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative" xlink:title="999052 - Disclosure - Supplier Finance Program (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:label="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:label="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="loc_us-gaapFinancialInstrumentAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:to="loc_us-gaapFinancialInstrumentAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFinancialInstrumentAxis" xlink:to="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFinancialInstrumentAxis" xlink:to="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SupplierFinanceProgramMember" xlink:label="loc_TGLSSupplierFinanceProgramMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="loc_TGLSSupplierFinanceProgramMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProgramRightsObligationsCurrent" xlink:label="loc_us-gaapProgramRightsObligationsCurrent_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="loc_us-gaapProgramRightsObligationsCurrent_30" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent_30" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="loc_us-gaapOtherLiabilitiesCurrent_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="loc_us-gaapOtherLiabilitiesCurrent_30" xlink:type="arc" order="2" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails" xlink:title="999053 - Disclosure - Schedule of Long Term Debt (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" xlink:title="999054 - Disclosure - Schedule of Interest Income Expenses net and deferred cost (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails" xlink:title="999055 - Disclosure - Schedule of Maturities of Long Term Debt (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails" xlink:title="999056 - Disclosure - Schedule of Future Minimum Lease Payments (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DebtDetailsNarrative" xlink:title="999057 - Disclosure - Debt (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaapLineOfCreditFacilityLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="loc_us-gaapLineOfCreditFacilityTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaapCreditFacilityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapCreditFacilityAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacilityMember" xlink:label="loc_TGLSSeniorSecuredCreditFacilityMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCreditFacilityDomain" xlink:to="loc_TGLSSeniorSecuredCreditFacilityMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapDebtInstrumentAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="loc_us-gaapSecuredOvernightFinancingRateSofrMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_us-gaapSecuredOvernightFinancingRateSofrMember_30" xlink:type="arc" order="32" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_120" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="loc_us-gaapDebtInstrumentMaturityDateDescription_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentMaturityDateDescription_120" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateEffectivePercentage_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateEffectivePercentage_120" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="loc_us-gaapPaymentsOfDebtIssuanceCosts_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapPaymentsOfDebtIssuanceCosts_120" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaapGainsLossesOnExtinguishmentOfDebt_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapGainsLossesOnExtinguishmentOfDebt_120" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:label="loc_us-gaapWriteOffOfDeferredDebtIssuanceCost_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapWriteOffOfDeferredDebtIssuanceCost_120" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_TerminationCosts" xlink:label="loc_TGLSTerminationCosts_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSTerminationCosts_120" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LegalFees" xlink:label="loc_us-gaapLegalFees_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLegalFees_120" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeductedFromProceedsFromIssuanceOfDebt" xlink:label="loc_TGLSDeductedFromProceedsFromIssuanceOfDebt_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSDeductedFromProceedsFromIssuanceOfDebt_120" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredFinanceCostsNoncurrentNet" xlink:label="loc_us-gaapDeferredFinanceCostsNoncurrentNet_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDeferredFinanceCostsNoncurrentNet_120" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RepaymentsOfDebt" xlink:label="loc_us-gaapRepaymentsOfDebt_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapRepaymentsOfDebt_120" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtWeightedAverageInterestRate" xlink:label="loc_us-gaapDebtWeightedAverageInterestRate_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtWeightedAverageInterestRate_120" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="loc_us-gaapFinanceLeaseRightOfUseAsset_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseRightOfUseAsset_120" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" xlink:label="loc_TGLSFinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_120" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseShortTermDebt" xlink:label="loc_TGLSFinanceLeaseShortTermDebt_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeaseShortTermDebt_120" xlink:type="arc" order="14" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseLongTermDebt" xlink:label="loc_TGLSFinanceLeaseLongTermDebt_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeaseLongTermDebt_120" xlink:type="arc" order="15" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization_120" xlink:type="arc" order="16" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="loc_us-gaapFinanceLeaseInterestExpense_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseInterestExpense_120" xlink:type="arc" order="17" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="loc_us-gaapFinanceLeasePrincipalPayments_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeasePrincipalPayments_120" xlink:type="arc" order="18" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" xlink:label="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_120" xlink:type="arc" order="19" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" xlink:label="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_120" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" xlink:label="loc_TGLSNoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSNoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_120" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaapFinanceLeaseWeightedAverageRemainingLeaseTerm1_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseWeightedAverageRemainingLeaseTerm1_120" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaapFinanceLeaseWeightedAverageDiscountRatePercent_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseWeightedAverageDiscountRatePercent_120" xlink:type="arc" order="23" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails" xlink:title="999058 - Disclosure - Schedule of Fair Value of Foreign Currency Hedges (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestRateSwapContractsMember" xlink:label="loc_TGLSInterestRateSwapContractsMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSInterestRateSwapContractsMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ForeignCurrencyNonDeliveryForwardsMember" xlink:label="loc_TGLSForeignCurrencyNonDeliveryForwardsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSForeignCurrencyNonDeliveryForwardsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StatementOfBalanceSheetLocationAxis" xlink:label="loc_TGLSStatementOfBalanceSheetLocationAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_TGLSStatementOfBalanceSheetLocationAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StatementOfBalanceSheetLocationDomain" xlink:label="loc_TGLSStatementOfBalanceSheetLocationDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_TGLSStatementOfBalanceSheetLocationAxis" xlink:to="loc_TGLSStatementOfBalanceSheetLocationDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StatementOfBalanceSheetLocationDomain" xlink:label="loc_TGLSStatementOfBalanceSheetLocationDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_TGLSStatementOfBalanceSheetLocationAxis" xlink:to="loc_TGLSStatementOfBalanceSheetLocationDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherCurrentAssetMember" xlink:label="loc_TGLSOtherCurrentAssetMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_TGLSStatementOfBalanceSheetLocationDomain" xlink:to="loc_TGLSOtherCurrentAssetMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="loc_us-gaapAccruedLiabilitiesMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_TGLSStatementOfBalanceSheetLocationDomain" xlink:to="loc_us-gaapAccruedLiabilitiesMember_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedges" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedges_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsAndHedges_60" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgesLiabilities" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgesLiabilities_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsAndHedgesLiabilities_60" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" xlink:title="999059 - Disclosure - Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" xlink:label="loc_TGLSInterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSInterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember" xlink:label="loc_TGLSInterestExpenseNetOfDeferredCostOfFinancingMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSInterestExpenseNetOfDeferredCostOfFinancingMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DerivativeGainLossesOnDerivativeNet" xlink:label="loc_TGLSDerivativeGainLossesOnDerivativeNet_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_TGLSDerivativeGainLossesOnDerivativeNet_80" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" xlink:title="999060 - Disclosure - Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" xlink:title="999061 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestRateSwapMember" xlink:label="loc_us-gaapInterestRateSwapMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_us-gaapInterestRateSwapMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ForeignCurrencyNonDeliveryForwardsMember" xlink:label="loc_TGLSForeignCurrencyNonDeliveryForwardsMember_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSForeignCurrencyNonDeliveryForwardsMember_90" xlink:type="arc" order="91" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaapCreditFacilityAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapCreditFacilityAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacilityMember" xlink:label="loc_TGLSSeniorSecuredCreditFacilityMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCreditFacilityDomain" xlink:to="loc_TGLSSeniorSecuredCreditFacilityMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDebtInstrumentAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="loc_us-gaapSecuredOvernightFinancingRateSofrMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_us-gaapSecuredOvernightFinancingRateSofrMember_50" xlink:type="arc" order="52" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="loc_us-gaapDerivativeFixedInterestRate_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeFixedInterestRate_110" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity_110" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="loc_us-gaapDebtInstrumentMaturityDateDescription_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDebtInstrumentMaturityDateDescription_110" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaapDebtInstrumentBasisSpreadOnVariableRate1_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDebtInstrumentBasisSpreadOnVariableRate1_110" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaapDerivativeAssets_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeAssets_110" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestEarningAssetsAverageAmountOutstanding" xlink:label="loc_us-gaapInterestEarningAssetsAverageAmountOutstanding_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapInterestEarningAssetsAverageAmountOutstanding_110" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtAverageAmountOutstanding" xlink:label="loc_us-gaapLongTermDebtAverageAmountOutstanding_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapLongTermDebtAverageAmountOutstanding_110" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax_110" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedges" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedges_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsAndHedges_110" xlink:type="arc" order="8" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails" xlink:title="999062 - Disclosure - Schedule of Components of Income Tax Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExaminationLineItems" xlink:label="loc_us-gaapIncomeTaxExaminationLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExaminationTable" xlink:label="loc_us-gaapIncomeTaxExaminationTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapIncomeTaxExaminationTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapIncomeTaxExaminationTable" xlink:to="loc_srtStatementGeographicalAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_US" xlink:label="loc_countryUS_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_CO" xlink:label="loc_countryCO_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCO_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_PA" xlink:label="loc_countryPA_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryPA_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentIncomeTaxExpenseBenefit_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapCurrentIncomeTaxExpenseBenefit_170" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit_170" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit_170" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaapEffectiveIncomeTaxRateContinuingOperations_170" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapEffectiveIncomeTaxRateContinuingOperations_170" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxesDetailsNarrative" xlink:title="999063 - Disclosure - Income Taxes (Details Narrative)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails" xlink:title="999064 - Disclosure - Schedule of Related Parties (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaapRelatedPartyTransactionLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="loc_us-gaapRelatedPartyTransactionAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AlutraficLedSASMember" xlink:label="loc_TGLSAlutraficLedSASMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSAlutraficLedSASMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StudioAvantiSASMember" xlink:label="loc_TGLSStudioAvantiSASMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStudioAvantiSASMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PrismaGlassLLCMember" xlink:label="loc_TGLSPrismaGlassLLCMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSPrismaGlassLLCMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherMember" xlink:label="loc_TGLSOtherMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSOtherMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_VidrioAndinoMember" xlink:label="loc_TGLSVidrioAndinoMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSVidrioAndinoMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherReceivablesNetCurrent" xlink:label="loc_us-gaapOtherReceivablesNetCurrent_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapOtherReceivablesNetCurrent_130" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="loc_us-gaapOtherLiabilitiesCurrent_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapOtherLiabilitiesCurrent_130" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails" xlink:title="999065 - Disclosure - Schedule of Sale to Related Parties (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaapRelatedPartyTransactionLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="loc_us-gaapRelatedPartyTransactionAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PrismaGlassLLCMember" xlink:label="loc_TGLSPrismaGlassLLCMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSPrismaGlassLLCMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AlutraficLedSASMember" xlink:label="loc_TGLSAlutraficLedSASMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSAlutraficLedSASMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StudioAvantiSASMember" xlink:label="loc_TGLSStudioAvantiSASMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStudioAvantiSASMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SalesToOtherRelatedPartiesMember" xlink:label="loc_TGLSSalesToOtherRelatedPartiesMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSSalesToOtherRelatedPartiesMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues_210" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapRevenues_210" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedPartiesDetailsNarrative" xlink:title="999066 - Disclosure - Related Parties (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaapRelatedPartyTransactionLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="loc_us-gaapRelatedPartyTransactionAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AlutraficLedSASMember" xlink:label="loc_TGLSAlutraficLedSASMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSAlutraficLedSASMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FundacionTecnoglassMember" xlink:label="loc_TGLSFundacionTecnoglassMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSFundacionTecnoglassMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PrismaGlassLLCMember" xlink:label="loc_TGLSPrismaGlassLLCMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSPrismaGlassLLCMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SantaMariaDelMarSASMember" xlink:label="loc_TGLSSantaMariaDelMarSASMember_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSSantaMariaDelMarSASMember_160" xlink:type="arc" order="162" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StormArmourSolutionsLLCMember" xlink:label="loc_TGLSStormArmourSolutionsLLCMember_210" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStormArmourSolutionsLLCMember_210" xlink:type="arc" order="211" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StudioAvantiSASMember" xlink:label="loc_TGLSStudioAvantiSASMember_220" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStudioAvantiSASMember_220" xlink:type="arc" order="221" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ZofracostaSAMember" xlink:label="loc_TGLSZofracostaSAMember_400" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSZofracostaSAMember_400" xlink:type="arc" order="401" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_srtTitleOfIndividualAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CEOAndCOOMember" xlink:label="loc_TGLSCEOAndCOOMember_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_TGLSCEOAndCOOMember_160" xlink:type="arc" order="161" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StormArmourSolutionsLLCMember" xlink:label="loc_TGLSStormArmourSolutionsLLCMember_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_TGLSStormArmourSolutionsLLCMember_200" xlink:type="arc" order="201" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_srtOwnershipAxis" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_VidrioAndinoMember" xlink:label="loc_TGLSVidrioAndinoMember_280" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_TGLSVidrioAndinoMember_280" xlink:type="arc" order="281" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapRevenues_430" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapAccountsReceivableNet_430" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CashContributionsForSocialCauses" xlink:label="loc_TGLSCashContributionsForSocialCauses_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSCashContributionsForSocialCauses_430" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PurchasePriceOfFuel" xlink:label="loc_TGLSPurchasePriceOfFuel_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSPurchasePriceOfFuel_430" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_430" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Investments" xlink:label="loc_us-gaapInvestments_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapInvestments_430" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent_430" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1_430" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesGross_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesGross_430" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_430" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions_430" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharesIssuedPricePerShare" xlink:label="loc_us-gaapSharesIssuedPricePerShare_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapSharesIssuedPricePerShare_430" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PremiumClosingStockPercentage" xlink:label="loc_TGLSPremiumClosingStockPercentage_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSPremiumClosingStockPercentage_430" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ExpectedOwnershipPercentage" xlink:label="loc_TGLSExpectedOwnershipPercentage_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSExpectedOwnershipPercentage_430" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FutureAdditionalContributionAmount" xlink:label="loc_TGLSFutureAdditionalContributionAmount_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSFutureAdditionalContributionAmount_430" xlink:type="arc" order="14" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireProductiveAssets" xlink:label="loc_us-gaapPaymentsToAcquireProductiveAssets_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapPaymentsToAcquireProductiveAssets_430" xlink:type="arc" order="15" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapAccountsPayableCurrent_430" xlink:type="arc" order="16" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaapIncomeLossFromEquityMethodInvestments_430" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapIncomeLossFromEquityMethodInvestments_430" xlink:type="arc" order="17" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails" xlink:title="999067 - Disclosure - Schedule of Earnings Per Share, Basic and Diluted (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative" xlink:title="999068 - Disclosure - Shareholders&#8217; Equity (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" xlink:to="loc_us-gaapAwardTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_QuarterlyRateMember" xlink:label="loc_TGLSQuarterlyRateMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_TGLSQuarterlyRateMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AnnualBasisMember" xlink:label="loc_TGLSAnnualBasisMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_TGLSAnnualBasisMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="loc_us-gaapTreasuryStockCommonMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapTreasuryStockCommonMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaapSharePrice_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapSharePrice_50" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaapTreasuryStockSharesAcquired_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapTreasuryStockSharesAcquired_50" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaapTreasuryStockValueAcquiredCostMethod_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapTreasuryStockValueAcquiredCostMethod_50" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaapTreasuryStockValue_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapTreasuryStockValue_50" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:title="999069 - Disclosure - Commitments and Contingencies (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LossContingenciesLineItems" xlink:label="loc_us-gaapLossContingenciesLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LossContingenciesTable" xlink:label="loc_us-gaapLossContingenciesTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapLossContingenciesLineItems" xlink:to="loc_us-gaapLossContingenciesTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLossContingenciesTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementScenarioAxis" xlink:label="loc_srtStatementScenarioAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapLossContingenciesTable" xlink:to="loc_srtStatementScenarioAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srtScenarioUnspecifiedDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementScenarioAxis" xlink:to="loc_srtScenarioUnspecifiedDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srtScenarioUnspecifiedDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtStatementScenarioAxis" xlink:to="loc_srtScenarioUnspecifiedDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FebruaryTwentyEightThousandThirtyThreeMember" xlink:label="loc_TGLSFebruaryTwentyEightThousandThirtyThreeMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtScenarioUnspecifiedDomain" xlink:to="loc_TGLSFebruaryTwentyEightThousandThirtyThreeMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ThroughTwoThousandTwentyEightMember" xlink:label="loc_TGLSThroughTwoThousandTwentyEightMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtScenarioUnspecifiedDomain" xlink:to="loc_TGLSThroughTwoThousandTwentyEightMember_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="loc_us-gaapLongTermPurchaseCommitmentAmount_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapLossContingenciesLineItems" xlink:to="loc_us-gaapLongTermPurchaseCommitmentAmount_30" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/PvpExecutiveCategoriesOnly" />
    <link:definitionLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/PvpAdjustmentsOnly" />
    <link:definitionLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/IndividualsOnly" />
    <link:definitionLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/AwardTypeOnly">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_QuarterlyRateMember" xlink:label="loc_TGLSQuarterlyRateMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_TGLSQuarterlyRateMember" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AnnualBasisMember" xlink:label="loc_TGLSAnnualBasisMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_TGLSAnnualBasisMember" xlink:type="arc" order="10" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/TradingArrangementsOnly" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>tgls-20260630_lab.xml
<DESCRIPTION>XBRL LABEL FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.5a -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
    <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl" xml:lang="en-US">Related and Nonrelated Parties [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="us-gaap_RelatedPartyMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyMember" xlink:to="us-gaap_RelatedPartyMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyMember_lbl" xml:lang="en-US">Related Party [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NonrelatedPartyMember" xlink:label="us-gaap_NonrelatedPartyMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonrelatedPartyMember" xlink:to="us-gaap_NonrelatedPartyMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonrelatedPartyMember_lbl" xml:lang="en-US">Nonrelated Party [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ExternalCustomersMember" xlink:label="TGLS_ExternalCustomersMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ExternalCustomersMember" xlink:to="TGLS_ExternalCustomersMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ExternalCustomersMember_lbl" xml:lang="en-US">External Customers [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xml:lang="en-US">Equity Components [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockMember_lbl" xml:lang="en-US">Common Stock [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="us-gaap_TreasuryStockCommonMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockCommonMember_lbl" xml:lang="en-US">Treasury Stock, Common [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_LegalReservesMember" xlink:label="TGLS_LegalReservesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_LegalReservesMember" xlink:to="TGLS_LegalReservesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_LegalReservesMember_lbl" xml:lang="en-US">Legal Reserves [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsMember_lbl" xml:lang="en-US">Retained Earnings [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl" xml:lang="en-US">Business Combination [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContiglassAssetAcquisitionLLCMember" xlink:label="TGLS_ContiglassAssetAcquisitionLLCMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContiglassAssetAcquisitionLLCMember" xlink:to="TGLS_ContiglassAssetAcquisitionLLCMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ContiglassAssetAcquisitionLLCMember_lbl" xml:lang="en-US">Contiglass Asset Acquisition LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeAxis_lbl" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MinimumMember_lbl" xml:lang="en-US">Minimum [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MaximumMember_lbl" xml:lang="en-US">Maximum [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RestatementAxis_lbl" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="srt_ScenarioPreviouslyReportedMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScenarioPreviouslyReportedMember" xlink:to="srt_ScenarioPreviouslyReportedMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScenarioPreviouslyReportedMember_lbl" xml:lang="en-US">Previously Reported [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:to="srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RevisionOfPriorPeriodReclassificationAdjustmentMember_lbl" xml:lang="en-US">Revision of Prior Period, Reclassification, Adjustment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementBusinessSegmentsAxis_lbl" xml:lang="en-US">Segments [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember" xlink:label="us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember" xlink:to="us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember_lbl" xml:lang="en-US">Reportable Segment, Aggregation before Other Operating Segment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueByLiabilityClassAxis" xlink:label="us-gaap_FairValueByLiabilityClassAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByLiabilityClassAxis" xlink:to="us-gaap_FairValueByLiabilityClassAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueByLiabilityClassAxis_lbl" xml:lang="en-US">Liability Class [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractAssetsMember" xlink:label="TGLS_ContractAssetsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContractAssetsMember" xlink:to="TGLS_ContractAssetsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ContractAssetsMember_lbl" xml:lang="en-US">Contract Assets [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractLiabilitiesMember" xlink:label="TGLS_ContractLiabilitiesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContractLiabilitiesMember" xlink:to="TGLS_ContractLiabilitiesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ContractLiabilitiesMember_lbl" xml:lang="en-US">Contract Liabilities [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ProductOrServiceAxis_lbl" xml:lang="en-US">Product and Service [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FixedPriceContractsMember" xlink:label="TGLS_FixedPriceContractsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FixedPriceContractsMember" xlink:to="TGLS_FixedPriceContractsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FixedPriceContractsMember_lbl" xml:lang="en-US">Fixed Price Contracts [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ProductSalesMember" xlink:label="TGLS_ProductSalesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ProductSalesMember" xlink:to="TGLS_ProductSalesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ProductSalesMember_lbl" xml:lang="en-US">Product Sales [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_StatementGeographicalAxis_lbl" xml:lang="en-US">Geographical [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_CO" xlink:label="country_CO" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_CO" xlink:to="country_CO_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_CO_lbl" xml:lang="en-US">COLOMBIA</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_US" xlink:label="country_US" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_US_lbl" xml:lang="en-US">UNITED STATES</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherMember" xlink:label="TGLS_OtherMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherMember" xlink:to="TGLS_OtherMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_OtherMember_lbl" xml:lang="en-US">Other [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ResidentialMember" xlink:label="TGLS_ResidentialMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ResidentialMember" xlink:to="TGLS_ResidentialMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ResidentialMember_lbl" xml:lang="en-US">Residential [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CommercialMember" xlink:label="TGLS_CommercialMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CommercialMember" xlink:to="TGLS_CommercialMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_CommercialMember_lbl" xml:lang="en-US">Commercial [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementScenarioAxis" xlink:to="srt_StatementScenarioAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_StatementScenarioAxis_lbl" xml:lang="en-US">Scenario [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioForecastMember" xlink:label="srt_ScenarioForecastMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScenarioForecastMember" xlink:to="srt_ScenarioForecastMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScenarioForecastMember_lbl" xml:lang="en-US">Forecast [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xml:lang="en-US">Intangible Asset, Finite-Lived, Class [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeNamesMember" xlink:to="us-gaap_TradeNamesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeNamesMember_lbl" xml:lang="en-US">Trade Names [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SoftwareAndLicensesMember" xlink:label="TGLS_SoftwareAndLicensesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SoftwareAndLicensesMember" xlink:to="TGLS_SoftwareAndLicensesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_SoftwareAndLicensesMember_lbl" xml:lang="en-US">Software and Licenses [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" xlink:label="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" xlink:to="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_lbl" xml:lang="en-US">Notice of Acceptances Product Designs and Intellectual Property [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractBacklogMember" xlink:label="TGLS_ContractBacklogMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContractBacklogMember" xlink:to="TGLS_ContractBacklogMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ContractBacklogMember_lbl" xml:lang="en-US">Contract Backlog [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="us-gaap_FinancialInstrumentAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_FinancialInstrumentAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancialInstrumentAxis_lbl" xml:lang="en-US">Financial Instrument [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SupplierFinanceProgramMember" xlink:label="TGLS_SupplierFinanceProgramMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SupplierFinanceProgramMember" xlink:to="TGLS_SupplierFinanceProgramMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_SupplierFinanceProgramMember_lbl" xml:lang="en-US">Supplier Finance Program [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CreditFacilityAxis_lbl" xml:lang="en-US">Credit Facility [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacilityMember" xlink:label="TGLS_SeniorSecuredCreditFacilityMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SeniorSecuredCreditFacilityMember" xlink:to="TGLS_SeniorSecuredCreditFacilityMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_SeniorSecuredCreditFacilityMember_lbl" xml:lang="en-US">Senior Secured Credit Facility [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentAxis_lbl" xml:lang="en-US">Debt Instrument [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:to="us-gaap_SecuredOvernightFinancingRateSofrMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrMember_lbl" xml:lang="en-US">Secured Overnight Financing Rate (SOFR) [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="us-gaap_DerivativeInstrumentRiskAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentRiskAxis" xlink:to="us-gaap_DerivativeInstrumentRiskAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentRiskAxis_lbl" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestRateSwapMember" xlink:label="us-gaap_InterestRateSwapMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestRateSwapMember" xlink:to="us-gaap_InterestRateSwapMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestRateSwapMember_lbl" xml:lang="en-US">Interest Rate Swap [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ForeignCurrencyNonDeliveryForwardsMember" xlink:label="TGLS_ForeignCurrencyNonDeliveryForwardsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ForeignCurrencyNonDeliveryForwardsMember" xlink:to="TGLS_ForeignCurrencyNonDeliveryForwardsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ForeignCurrencyNonDeliveryForwardsMember_lbl" xml:lang="en-US">Foreign Currency Non Delivery Forwards [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestRateSwapContractsMember" xlink:label="TGLS_InterestRateSwapContractsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestRateSwapContractsMember" xlink:to="TGLS_InterestRateSwapContractsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_InterestRateSwapContractsMember_lbl" xml:lang="en-US">Interest Rate Swap Contracts [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StatementOfBalanceSheetLocationAxis" xlink:label="TGLS_StatementOfBalanceSheetLocationAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_StatementOfBalanceSheetLocationAxis" xlink:to="TGLS_StatementOfBalanceSheetLocationAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_StatementOfBalanceSheetLocationAxis_lbl" xml:lang="en-US">Statement Of Balance Sheet Location [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherCurrentAssetMember" xlink:label="TGLS_OtherCurrentAssetMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherCurrentAssetMember" xlink:to="TGLS_OtherCurrentAssetMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_OtherCurrentAssetMember_lbl" xml:lang="en-US">Other Current Asset [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="us-gaap_AccruedLiabilitiesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesMember" xlink:to="us-gaap_AccruedLiabilitiesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedLiabilitiesMember_lbl" xml:lang="en-US">Accrued Liabilities [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" xlink:label="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" xlink:to="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_lbl" xml:lang="en-US">Interest Rate Swap Contracts and Foreign Currency Non-delivery Forwards [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember" xlink:label="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember" xlink:to="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember_lbl" xml:lang="en-US">Interest Expense Net of Deferred Cost of Financing [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_PA" xlink:label="country_PA" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_PA" xlink:to="country_PA_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_PA_lbl" xml:lang="en-US">PANAMA</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="us-gaap_RelatedPartyTransactionAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionAxis" xlink:to="us-gaap_RelatedPartyTransactionAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionAxis_lbl" xml:lang="en-US">Related Party Transaction [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AlutraficLedSASMember" xlink:label="TGLS_AlutraficLedSASMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_AlutraficLedSASMember" xlink:to="TGLS_AlutraficLedSASMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_AlutraficLedSASMember_lbl" xml:lang="en-US">Alutrafic Led SAS [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StudioAvantiSASMember" xlink:label="TGLS_StudioAvantiSASMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_StudioAvantiSASMember" xlink:to="TGLS_StudioAvantiSASMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_StudioAvantiSASMember_lbl" xml:lang="en-US">Studio Avanti SAS [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PrismaGlassLLCMember" xlink:label="TGLS_PrismaGlassLLCMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_PrismaGlassLLCMember" xlink:to="TGLS_PrismaGlassLLCMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_PrismaGlassLLCMember_lbl" xml:lang="en-US">Prisma Glass LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_VidrioAndinoMember" xlink:label="TGLS_VidrioAndinoMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_VidrioAndinoMember" xlink:to="TGLS_VidrioAndinoMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_VidrioAndinoMember_lbl" xml:lang="en-US">Vidrio Andino [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SalesToOtherRelatedPartiesMember" xlink:label="TGLS_SalesToOtherRelatedPartiesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SalesToOtherRelatedPartiesMember" xlink:to="TGLS_SalesToOtherRelatedPartiesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_SalesToOtherRelatedPartiesMember_lbl" xml:lang="en-US">Sales to Other Related Parties [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FundacionTecnoglassMember" xlink:label="TGLS_FundacionTecnoglassMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FundacionTecnoglassMember" xlink:to="TGLS_FundacionTecnoglassMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FundacionTecnoglassMember_lbl" xml:lang="en-US">Fundacion Tecnoglass [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_TitleOfIndividualAxis_lbl" xml:lang="en-US">Title and Position [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CEOAndCOOMember" xlink:label="TGLS_CEOAndCOOMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CEOAndCOOMember" xlink:to="TGLS_CEOAndCOOMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_CEOAndCOOMember_lbl" xml:lang="en-US">CEO and COO [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SantaMariaDelMarSASMember" xlink:label="TGLS_SantaMariaDelMarSASMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SantaMariaDelMarSASMember" xlink:to="TGLS_SantaMariaDelMarSASMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_SantaMariaDelMarSASMember_lbl" xml:lang="en-US">Santa Maria Del Mar SAS [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_lbl" xml:lang="en-US">Investment, Name [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StormArmourSolutionsLLCMember" xlink:label="TGLS_StormArmourSolutionsLLCMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_StormArmourSolutionsLLCMember" xlink:to="TGLS_StormArmourSolutionsLLCMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_StormArmourSolutionsLLCMember_lbl" xml:lang="en-US">Storm Armour Solutions LLC [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_OwnershipAxis_lbl" xml:lang="en-US">Ownership [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ZofracostaSAMember" xlink:label="TGLS_ZofracostaSAMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ZofracostaSAMember" xlink:to="TGLS_ZofracostaSAMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ZofracostaSAMember_lbl" xml:lang="en-US">Zofracosta SA [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AwardTypeAxis_lbl" xml:lang="en-US">Award Type [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_QuarterlyRateMember" xlink:label="TGLS_QuarterlyRateMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_QuarterlyRateMember" xlink:to="TGLS_QuarterlyRateMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_QuarterlyRateMember_lbl" xml:lang="en-US">Quarterly Rate [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AnnualBasisMember" xlink:label="TGLS_AnnualBasisMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_AnnualBasisMember" xlink:to="TGLS_AnnualBasisMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_AnnualBasisMember_lbl" xml:lang="en-US">Annual Basis [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FebruaryTwentyEightThousandThirtyThreeMember" xlink:label="TGLS_FebruaryTwentyEightThousandThirtyThreeMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FebruaryTwentyEightThousandThirtyThreeMember" xlink:to="TGLS_FebruaryTwentyEightThousandThirtyThreeMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FebruaryTwentyEightThousandThirtyThreeMember_lbl" xml:lang="en-US">February 28, 2023 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ThroughTwoThousandTwentyEightMember" xlink:label="TGLS_ThroughTwoThousandTwentyEightMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ThroughTwoThousandTwentyEightMember" xlink:to="TGLS_ThroughTwoThousandTwentyEightMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ThroughTwoThousandTwentyEightMember_lbl" xml:lang="en-US">Through 2028 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AmendmentDescription" xlink:label="dei_AmendmentDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentDescription" xlink:to="dei_AmendmentDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentDescription_lbl" xml:lang="en-US">Amendment Description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentRegistrationStatement" xlink:label="dei_DocumentRegistrationStatement" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentRegistrationStatement" xlink:to="dei_DocumentRegistrationStatement_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentRegistrationStatement_lbl" xml:lang="en-US">Document Registration Statement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAnnualReport_lbl" xml:lang="en-US">Document Annual Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US">Document Quarterly Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentShellCompanyReport" xlink:label="dei_DocumentShellCompanyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyReport" xlink:to="dei_DocumentShellCompanyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyReport_lbl" xml:lang="en-US">Document Shell Company Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentShellCompanyEventDate" xlink:label="dei_DocumentShellCompanyEventDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyEventDate" xlink:to="dei_DocumentShellCompanyEventDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyEventDate_lbl" xml:lang="en-US">Document Shell Company Event Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentPeriodStartDate" xlink:label="dei_DocumentPeriodStartDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodStartDate" xlink:to="dei_DocumentPeriodStartDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodStartDate_lbl" xml:lang="en-US">Document Period Start Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityPrimarySicNumber" xlink:label="dei_EntityPrimarySicNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPrimarySicNumber" xlink:to="dei_EntityPrimarySicNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPrimarySicNumber_lbl" xml:lang="en-US">Entity Primary SIC Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address, Address Line One</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US">Entity Address, Address Line Two</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine3_lbl" xml:lang="en-US">Entity Address, Address Line Three</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address, City or Town</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address, State or Province</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCountry_lbl" xml:lang="en-US">Entity Address, Country</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CountryRegion" xlink:label="dei_CountryRegion" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CountryRegion" xlink:to="dei_CountryRegion_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CountryRegion_lbl" xml:lang="en-US">Country Region</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_Extension" xlink:label="dei_Extension" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Extension" xlink:to="dei_Extension_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Extension_lbl" xml:lang="en-US">Extension</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US">Written Communications</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US">Soliciting Material</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Title of 12(b) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_NoTradingSymbolFlag" xlink:label="dei_NoTradingSymbolFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_NoTradingSymbolFlag" xlink:to="dei_NoTradingSymbolFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_NoTradingSymbolFlag_lbl" xml:lang="en-US">No Trading Symbol Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_Security12gTitle" xlink:label="dei_Security12gTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12gTitle" xlink:to="dei_Security12gTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12gTitle_lbl" xml:lang="en-US">Title of 12(g) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_SecurityReportingObligation" xlink:label="dei_SecurityReportingObligation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityReportingObligation" xlink:to="dei_SecurityReportingObligation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityReportingObligation_lbl" xml:lang="en-US">Security Reporting Obligation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AnnualInformationForm" xlink:label="dei_AnnualInformationForm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AnnualInformationForm" xlink:to="dei_AnnualInformationForm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AnnualInformationForm_lbl" xml:lang="en-US">Annual Information Form</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="dei_AuditedAnnualFinancialStatements" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditedAnnualFinancialStatements" xlink:to="dei_AuditedAnnualFinancialStatements_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditedAnnualFinancialStatements_lbl" xml:lang="en-US">Audited Annual Financial Statements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityVoluntaryFilers_lbl" xml:lang="en-US">Entity Voluntary Filers</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityExTransitionPeriod" xlink:label="dei_EntityExTransitionPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityExTransitionPeriod" xlink:to="dei_EntityExTransitionPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityExTransitionPeriod_lbl" xml:lang="en-US">Elected Not To Use the Extended Transition Period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentAccountingStandard" xlink:label="dei_DocumentAccountingStandard" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAccountingStandard" xlink:to="dei_DocumentAccountingStandard_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAccountingStandard_lbl" xml:lang="en-US">Document Accounting Standard</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_OtherReportingStandardItemNumber" xlink:label="dei_OtherReportingStandardItemNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_OtherReportingStandardItemNumber" xlink:to="dei_OtherReportingStandardItemNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_OtherReportingStandardItemNumber_lbl" xml:lang="en-US">Other Reporting Standard Item Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPublicFloat_lbl" xml:lang="en-US">Entity Public Float</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityBankruptcyProceedingsReportingCurrent" xlink:to="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xml:lang="en-US">Entity Bankruptcy Proceedings, Reporting Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityListingParValuePerShare" xlink:label="dei_EntityListingParValuePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityListingParValuePerShare" xlink:to="dei_EntityListingParValuePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityListingParValuePerShare_lbl" xml:lang="en-US">Entity Listing, Par Value Per Share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_lbl" xml:lang="en-US">Defined Benefit Plan [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="us-gaap_DefinedBenefitPlanDisclosureLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_DefinedBenefitPlanDisclosureLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedBenefitPlanDisclosureLineItems_lbl" xml:lang="en-US">Defined Benefit Plan Disclosure [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsAbstract_lbl" xml:lang="en-US">ASSETS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US">Current assets:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash and cash equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShortTermInvestments" xlink:label="us-gaap_ShortTermInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermInvestments" xlink:to="us-gaap_ShortTermInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShortTermInvestments_lbl" xml:lang="en-US">Investments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US">Trade accounts receivable, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherReceivablesNetCurrent" xlink:label="us-gaap_OtherReceivablesNetCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherReceivablesNetCurrent" xlink:to="us-gaap_OtherReceivablesNetCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherReceivablesNetCurrent_lbl" xml:lang="en-US">Due from related parties</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Inventories</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xml:lang="en-US">Contract assets &#8211; current portion</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsCurrent" xlink:label="us-gaap_OtherAssetsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssetsCurrent_lbl" xml:lang="en-US">Other current assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsCurrent_lbl" xml:lang="en-US">Total current assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsNoncurrentAbstract" xlink:label="us-gaap_AssetsNoncurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsNoncurrentAbstract" xlink:to="us-gaap_AssetsNoncurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsNoncurrentAbstract_lbl" xml:lang="en-US">Long-term assets:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, plant and equipment, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="us-gaap_AccountsReceivableNetNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetNoncurrent" xlink:to="us-gaap_AccountsReceivableNetNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNetNoncurrent_lbl" xml:lang="en-US">Long term accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xml:lang="en-US">Deferred income taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl" xml:lang="en-US">Contract assets &#8211; non-current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US">Intangible assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Goodwill_lbl" xml:lang="en-US">Goodwill</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermInvestments" xlink:label="us-gaap_LongTermInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermInvestments" xlink:to="us-gaap_LongTermInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermInvestments_lbl" xml:lang="en-US">Equity method investment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xml:lang="en-US">Other long-term assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsNoncurrent" xlink:label="us-gaap_AssetsNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_AssetsNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsNoncurrent_lbl" xml:lang="en-US">Total long-term assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Assets_lbl" xml:lang="en-US">Total assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xml:lang="en-US">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Current liabilities:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtCurrent" xlink:label="us-gaap_DebtCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtCurrent" xlink:to="us-gaap_DebtCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtCurrent_lbl" xml:lang="en-US">Short-term debt and current portion of long-term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Trade accounts payable and accrued expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="us-gaap_OtherLiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesCurrent" xlink:to="us-gaap_OtherLiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherLiabilitiesCurrent_lbl" xml:lang="en-US">Other current liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPayableCurrent" xlink:to="us-gaap_DividendsPayableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsPayableCurrent_lbl" xml:lang="en-US">Dividends payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xml:lang="en-US">Contract liability &#8211; current portion</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xml:lang="en-US">Total current liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xml:lang="en-US">Long-term liabilities:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xml:lang="en-US">Deferred income taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl" xml:lang="en-US">Contract liability &#8211; non-current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xml:lang="en-US">Long-term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesNoncurrent_lbl" xml:lang="en-US">Total long-term liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Liabilities_lbl" xml:lang="en-US">Total liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xml:lang="en-US">SHAREHOLDERS&#8217; EQUITY</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockValue_lbl" xml:lang="en-US">Preferred shares, $0.0001 par value, 1,000,000 shares authorized, 0 shares issued and outstanding at June 30, 2026, and December 31, 2025 respectively</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockValue_lbl" xml:lang="en-US">Ordinary shares, $0.0001 par value, 100,000,000 shares authorized, 46,389,046 shares issued, and 44,364,716 shares outstanding at June 30, 2026; and, 46,389,146 shares issued, and 44,737,726 shares outstanding at December 31, 2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_TreasuryStockValue_lbl" xml:lang="en-US">Treasury stock</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_LegalReserves" xlink:label="TGLS_LegalReserves" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_LegalReserves" xlink:to="TGLS_LegalReserves_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_LegalReserves_lbl" xml:lang="en-US">Legal Reserves</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xml:lang="en-US">Additional paid-in capital</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Retained earnings</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xml:lang="en-US">Accumulated other comprehensive (loss)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Shareholders&#8217; equity attributable to controlling interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xml:lang="en-US">Total liabilities and shareholders&#8217; equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Preferred shares, par value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xml:lang="en-US">Preferred shares, shares authorized</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xml:lang="en-US">Preferred shares, shares issued</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xml:lang="en-US">Preferred shares, shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Ordinary shares, par value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xml:lang="en-US">Ordinary shares, shares authorized</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xml:lang="en-US">Ordinary shares, shares issued</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xml:lang="en-US">Ordinary shares, shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xml:lang="en-US">Operating revenues:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xml:lang="en-US">Total operating revenues</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xml:lang="en-US">Cost of sales</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_GrossProfit_lbl" xml:lang="en-US">Gross profit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpensesAbstract_lbl" xml:lang="en-US">Operating expenses:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SellingExpense" xlink:label="us-gaap_SellingExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingExpense" xlink:to="us-gaap_SellingExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_SellingExpense_lbl" xml:lang="en-US">Selling expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xml:lang="en-US">General and administrative expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:label="us-gaap_OperatingExpenses_lbl" xml:lang="en-US">Total operating expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherOperatingIncomeLoss" xlink:label="TGLS_OtherOperatingIncomeLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherOperatingIncomeLoss" xlink:to="TGLS_OtherOperatingIncomeLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_OtherOperatingIncomeLoss_lbl" xml:lang="en-US">Other Operating income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US">Operating income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NonoperatingGainsLosses" xlink:label="us-gaap_NonoperatingGainsLosses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingGainsLosses" xlink:to="us-gaap_NonoperatingGainsLosses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingGainsLosses_lbl" xml:lang="en-US">Non-operating income, net</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_EquityMethodIncome" xlink:label="TGLS_EquityMethodIncome" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_EquityMethodIncome" xlink:to="TGLS_EquityMethodIncome_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_EquityMethodIncome_lbl" xml:lang="en-US">Equity method (loss) income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl" xml:lang="en-US">Foreign currency transactions gains</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestExpenseAndDeferredCostOfFinancing" xlink:label="TGLS_InterestExpenseAndDeferredCostOfFinancing" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestExpenseAndDeferredCostOfFinancing" xlink:to="TGLS_InterestExpenseAndDeferredCostOfFinancing_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="TGLS_InterestExpenseAndDeferredCostOfFinancing_lbl" xml:lang="en-US">Interest expense, net and deferred cost of financing</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US">Income before taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Income tax provision</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US">Net income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Basic income per share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Diluted income per share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Basic weighted average common shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Diluted weighted average common shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl" xml:lang="en-US">Other comprehensive income:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xml:lang="en-US">Foreign currency translation adjustments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_lbl" xml:lang="en-US">Change in fair value of investments available for sale and derivative contracts</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_lbl" xml:lang="en-US">Other comprehensive income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Total Comprehensive income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">CASH FLOWS FROM OPERATING ACTIVITIES</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLoss_2_lbl" xml:lang="en-US">Net income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForDoubtfulAccounts" xlink:to="us-gaap_ProvisionForDoubtfulAccounts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_lbl" xml:lang="en-US">Allowance for credit losses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xml:lang="en-US">Depreciation and amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" xml:lang="en-US">Deferred income taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments_lbl" xml:lang="en-US">Equity method income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xml:lang="en-US">Gain on disposal of assets</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeferredCostOfFinancing" xlink:label="TGLS_DeferredCostOfFinancing" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DeferredCostOfFinancing" xlink:to="TGLS_DeferredCostOfFinancing_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_DeferredCostOfFinancing_lbl" xml:lang="en-US">Deferred cost of financing</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RealizedGainOnDerivativeInstruments" xlink:label="TGLS_RealizedGainOnDerivativeInstruments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_RealizedGainOnDerivativeInstruments" xlink:to="TGLS_RealizedGainOnDerivativeInstruments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_RealizedGainOnDerivativeInstruments_lbl" xml:lang="en-US">Realized gain on derivative instruments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossUnrealized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl" xml:lang="en-US">Unrealized currency translation gains</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncashIncomeExpense" xlink:to="us-gaap_OtherNoncashIncomeExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl" xml:lang="en-US">Other non-cash adjustments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Changes in operating assets and liabilities:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xml:lang="en-US">Trade accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">Inventories</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl" xml:lang="en-US">Prepaid expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xml:lang="en-US">Other assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_lbl" xml:lang="en-US">Trade accounts payable and accrued expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl" xml:lang="en-US">Taxes payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities_lbl" xml:lang="en-US">Labor liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_lbl" xml:lang="en-US">Other liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:to="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities_lbl" xml:lang="en-US">Contract assets and liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInDueToRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueToRelatedParties" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInDueToRelatedParties" xlink:to="us-gaap_IncreaseDecreaseInDueToRelatedParties_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInDueToRelatedParties_lbl" xml:lang="en-US">Related parties</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US">CASH PROVIDED BY OPERATING ACTIVITIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xml:lang="en-US">CASH FLOWS FROM INVESTING ACTIVITIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:to="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital_lbl" xml:lang="en-US">Dividends received</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xml:lang="en-US">Business acquisition</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="us-gaap_PaymentsToAcquireInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireInvestments" xlink:to="us-gaap_PaymentsToAcquireInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireInvestments_lbl" xml:lang="en-US">Purchase of investments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xml:lang="en-US">Sale of property and equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US">Acquisition of property and equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US">CASH USED IN INVESTING ACTIVITIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xml:lang="en-US">CASH FLOWS FROM FINANCING ACTIVITIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsOfDividends" xlink:label="us-gaap_PaymentsOfDividends" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividends" xlink:to="us-gaap_PaymentsOfDividends_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsOfDividends_lbl" xml:lang="en-US">Cash dividend</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsForRepurchaseOfEquity" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfEquity" xlink:to="us-gaap_PaymentsForRepurchaseOfEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity_lbl" xml:lang="en-US">Share repurchases</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromIssuanceOfDebt" xlink:label="us-gaap_ProceedsFromIssuanceOfDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfDebt" xlink:to="us-gaap_ProceedsFromIssuanceOfDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromIssuanceOfDebt_lbl" xml:lang="en-US">Proceeds from debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RepaymentsOfDebt" xlink:label="us-gaap_RepaymentsOfDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfDebt" xlink:to="us-gaap_RepaymentsOfDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_RepaymentsOfDebt_lbl" xml:lang="en-US">Repayments of debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US">CASH PROVIDED BY (USED IN) FINANCING ACTIVITIES</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">Effect of exchange rate changes on cash and cash equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xml:lang="en-US">NET (DECREASE) INCREASE IN CASH AND CASH EQUIVALENTS</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">CASH AND CASH EQUIVALENTS - Beginning of period</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2_lbl" xml:lang="en-US">CASH AND CASH EQUIVALENTS - End of period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xml:lang="en-US">SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract" xlink:label="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract" xlink:to="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract_lbl" xml:lang="en-US">Cash paid during the period for:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestPaidNet_lbl" xml:lang="en-US">Interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl" xml:lang="en-US">Income Tax</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xml:lang="en-US">NON-CASH INVESTING AND FINANCING ACTIVITIES:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueOfAssetsAcquired" xlink:label="us-gaap_FairValueOfAssetsAcquired" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueOfAssetsAcquired" xlink:to="us-gaap_FairValueOfAssetsAcquired_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueOfAssetsAcquired_lbl" xml:lang="en-US">Assets acquired under credit or debt</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AccountPayableForBusinessAcquisition" xlink:label="TGLS_AccountPayableForBusinessAcquisition" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_AccountPayableForBusinessAcquisition" xlink:to="TGLS_AccountPayableForBusinessAcquisition_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_AccountPayableForBusinessAcquisition_lbl" xml:lang="en-US">Account payable for business acquisition</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementTable_lbl" xml:lang="en-US">Statement [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementLineItems_lbl" xml:lang="en-US">Statement [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xml:lang="en-US">Treasury stock balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DividendsCommonStock" xlink:label="us-gaap_DividendsCommonStock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCommonStock" xlink:to="us-gaap_DividendsCommonStock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DividendsCommonStock_lbl" xml:lang="en-US">Dividend ($0.15 per share)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod_lbl" xml:lang="en-US">Share Repurchase</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockSharesAcquired" xlink:to="us-gaap_TreasuryStockSharesAcquired_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockSharesAcquired_lbl" xml:lang="en-US">Share Repurchase, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" xlink:label="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" xlink:to="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_lbl" xml:lang="en-US">Change in fair value of investments available for sale and derivative contracts</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_lbl" xml:lang="en-US">Foreign currency translation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProfitLoss_lbl" xml:lang="en-US">Net income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xml:lang="en-US">Share Repurchase</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodShares" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xml:lang="en-US">Share Repurchase, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" xlink:label="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" xlink:to="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale_lbl" xml:lang="en-US">Change in fair value of investments available for sale</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_2_lbl" xml:lang="en-US">Derivative financial instruments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StockholdersEquity_2_lbl" xml:lang="en-US">Balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharesOutstanding_2_lbl" xml:lang="en-US">Balance, shares</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_TreasuryStockCommonShares_2_lbl" xml:lang="en-US">Treasury stock balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharePrice" xlink:to="us-gaap_SharePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharePrice_lbl" xml:lang="en-US">Dividend per share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PvpTable" xlink:label="ecd_PvpTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PvpTable" xlink:to="ecd_PvpTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PvpTable_lbl" xml:lang="en-US">Pay vs Performance Disclosure [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ExecutiveCategoryAxis" xlink:label="ecd_ExecutiveCategoryAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ExecutiveCategoryAxis" xlink:to="ecd_ExecutiveCategoryAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ExecutiveCategoryAxis_lbl" xml:lang="en-US">Executive Category [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_IndividualAxis" xlink:label="ecd_IndividualAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_IndividualAxis" xlink:to="ecd_IndividualAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_IndividualAxis_lbl" xml:lang="en-US">Individual [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToCompAxis" xlink:label="ecd_AdjToCompAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AdjToCompAxis" xlink:to="ecd_AdjToCompAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AdjToCompAxis_lbl" xml:lang="en-US">Adjustment to Compensation [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MeasureAxis" xlink:label="ecd_MeasureAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_MeasureAxis" xlink:to="ecd_MeasureAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_MeasureAxis_lbl" xml:lang="en-US">Measure [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PvpTableTextBlock" xlink:label="ecd_PvpTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PvpTableTextBlock" xlink:to="ecd_PvpTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PvpTableTextBlock_lbl" xml:lang="en-US">Pay vs Performance Disclosure, Table</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CoSelectedMeasureName" xlink:label="ecd_CoSelectedMeasureName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_CoSelectedMeasureName" xlink:to="ecd_CoSelectedMeasureName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_CoSelectedMeasureName_lbl" xml:lang="en-US">Company Selected Measure Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NamedExecutiveOfficersFnTextBlock" xlink:label="ecd_NamedExecutiveOfficersFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_NamedExecutiveOfficersFnTextBlock" xlink:to="ecd_NamedExecutiveOfficersFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_NamedExecutiveOfficersFnTextBlock_lbl" xml:lang="en-US">Named Executive Officers, Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeerGroupIssuersFnTextBlock" xlink:label="ecd_PeerGroupIssuersFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PeerGroupIssuersFnTextBlock" xlink:to="ecd_PeerGroupIssuersFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PeerGroupIssuersFnTextBlock_lbl" xml:lang="en-US">Peer Group Issuers, Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ChangedPeerGroupFnTextBlock" xlink:label="ecd_ChangedPeerGroupFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ChangedPeerGroupFnTextBlock" xlink:to="ecd_ChangedPeerGroupFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ChangedPeerGroupFnTextBlock_lbl" xml:lang="en-US">Changed Peer Group, Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeoTotalCompAmt" xlink:label="ecd_PeoTotalCompAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PeoTotalCompAmt" xlink:to="ecd_PeoTotalCompAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PeoTotalCompAmt_lbl" xml:lang="en-US">PEO Total Compensation Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeoActuallyPaidCompAmt" xlink:label="ecd_PeoActuallyPaidCompAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PeoActuallyPaidCompAmt" xlink:to="ecd_PeoActuallyPaidCompAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PeoActuallyPaidCompAmt_lbl" xml:lang="en-US">PEO Actually Paid Compensation Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToPeoCompFnTextBlock" xlink:label="ecd_AdjToPeoCompFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AdjToPeoCompFnTextBlock" xlink:to="ecd_AdjToPeoCompFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AdjToPeoCompFnTextBlock_lbl" xml:lang="en-US">Adjustment To PEO Compensation, Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonPeoNeoAvgTotalCompAmt" xlink:label="ecd_NonPeoNeoAvgTotalCompAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_NonPeoNeoAvgTotalCompAmt" xlink:to="ecd_NonPeoNeoAvgTotalCompAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_NonPeoNeoAvgTotalCompAmt_lbl" xml:lang="en-US">Non-PEO NEO Average Total Compensation Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:label="ecd_NonPeoNeoAvgCompActuallyPaidAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:to="ecd_NonPeoNeoAvgCompActuallyPaidAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_NonPeoNeoAvgCompActuallyPaidAmt_lbl" xml:lang="en-US">Non-PEO NEO Average Compensation Actually Paid Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:label="ecd_AdjToNonPeoNeoCompFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:to="ecd_AdjToNonPeoNeoCompFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AdjToNonPeoNeoCompFnTextBlock_lbl" xml:lang="en-US">Adjustment to Non-PEO NEO Compensation Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:label="ecd_EquityValuationAssumptionDifferenceFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:to="ecd_EquityValuationAssumptionDifferenceFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_EquityValuationAssumptionDifferenceFnTextBlock_lbl" xml:lang="en-US">Equity Valuation Assumption Difference, Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:label="ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:to="ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock_lbl" xml:lang="en-US">Compensation Actually Paid vs. Total Shareholder Return</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:label="ecd_CompActuallyPaidVsNetIncomeTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:to="ecd_CompActuallyPaidVsNetIncomeTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_CompActuallyPaidVsNetIncomeTextBlock_lbl" xml:lang="en-US">Compensation Actually Paid vs. Net Income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:label="ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:to="ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock_lbl" xml:lang="en-US">Compensation Actually Paid vs. Company Selected Measure</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:label="ecd_TotalShareholderRtnVsPeerGroupTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:to="ecd_TotalShareholderRtnVsPeerGroupTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TotalShareholderRtnVsPeerGroupTextBlock_lbl" xml:lang="en-US">Total Shareholder Return Vs Peer Group</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:label="ecd_CompActuallyPaidVsOtherMeasureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:to="ecd_CompActuallyPaidVsOtherMeasureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_CompActuallyPaidVsOtherMeasureTextBlock_lbl" xml:lang="en-US">Compensation Actually Paid vs. Other Measure</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TabularListTableTextBlock" xlink:label="ecd_TabularListTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TabularListTableTextBlock" xlink:to="ecd_TabularListTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TabularListTableTextBlock_lbl" xml:lang="en-US">Tabular List, Table</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TotalShareholderRtnAmt" xlink:label="ecd_TotalShareholderRtnAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TotalShareholderRtnAmt" xlink:to="ecd_TotalShareholderRtnAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TotalShareholderRtnAmt_lbl" xml:lang="en-US">Total Shareholder Return Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeerGroupTotalShareholderRtnAmt" xlink:label="ecd_PeerGroupTotalShareholderRtnAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PeerGroupTotalShareholderRtnAmt" xlink:to="ecd_PeerGroupTotalShareholderRtnAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PeerGroupTotalShareholderRtnAmt_lbl" xml:lang="en-US">Peer Group Total Shareholder Return Amount</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_3_lbl" xml:lang="en-US">Net Income (Loss)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CoSelectedMeasureAmt" xlink:label="ecd_CoSelectedMeasureAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_CoSelectedMeasureAmt" xlink:to="ecd_CoSelectedMeasureAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_CoSelectedMeasureAmt_lbl" xml:lang="en-US">Company Selected Measure Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OtherPerfMeasureAmt" xlink:label="ecd_OtherPerfMeasureAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_OtherPerfMeasureAmt" xlink:to="ecd_OtherPerfMeasureAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_OtherPerfMeasureAmt_lbl" xml:lang="en-US">Other Performance Measure, Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToCompAmt" xlink:label="ecd_AdjToCompAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AdjToCompAmt" xlink:to="ecd_AdjToCompAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AdjToCompAmt_lbl" xml:lang="en-US">Adjustment to Compensation, Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeoName" xlink:label="ecd_PeoName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PeoName" xlink:to="ecd_PeoName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PeoName_lbl" xml:lang="en-US">PEO Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MeasureName" xlink:label="ecd_MeasureName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_MeasureName" xlink:to="ecd_MeasureName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_MeasureName_lbl" xml:lang="en-US">Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonGaapMeasureDescriptionTextBlock" xlink:label="ecd_NonGaapMeasureDescriptionTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_NonGaapMeasureDescriptionTextBlock" xlink:to="ecd_NonGaapMeasureDescriptionTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_NonGaapMeasureDescriptionTextBlock_lbl" xml:lang="en-US">Non-GAAP Measure Description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_Additional402vDisclosureTextBlock" xlink:label="ecd_Additional402vDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_Additional402vDisclosureTextBlock" xlink:to="ecd_Additional402vDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_Additional402vDisclosureTextBlock_lbl" xml:lang="en-US">Additional 402(v) Disclosure</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PnsnBnftsAdjFnTextBlock" xlink:label="ecd_PnsnBnftsAdjFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_PnsnBnftsAdjFnTextBlock" xlink:to="ecd_PnsnBnftsAdjFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_PnsnBnftsAdjFnTextBlock_lbl" xml:lang="en-US">Pension Benefits Adjustments, Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_EqtyAwrdsAdjFnTextBlock" xlink:label="ecd_EqtyAwrdsAdjFnTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_EqtyAwrdsAdjFnTextBlock" xlink:to="ecd_EqtyAwrdsAdjFnTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_EqtyAwrdsAdjFnTextBlock_lbl" xml:lang="en-US">Equity Awards Adjustments, Footnote</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ErrCompRecoveryTable" xlink:label="ecd_ErrCompRecoveryTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ErrCompRecoveryTable" xlink:to="ecd_ErrCompRecoveryTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ErrCompRecoveryTable_lbl" xml:lang="en-US">Erroneously Awarded Compensation Recovery [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_RestatementDateAxis" xlink:label="ecd_RestatementDateAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_RestatementDateAxis" xlink:to="ecd_RestatementDateAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_RestatementDateAxis_lbl" xml:lang="en-US">Restatement Determination Date [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_RestatementDeterminationDate" xlink:label="ecd_RestatementDeterminationDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_RestatementDeterminationDate" xlink:to="ecd_RestatementDeterminationDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_RestatementDeterminationDate_lbl" xml:lang="en-US">Restatement Determination Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AggtErrCompAmt" xlink:label="ecd_AggtErrCompAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AggtErrCompAmt" xlink:to="ecd_AggtErrCompAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AggtErrCompAmt_lbl" xml:lang="en-US">Aggregate Erroneous Compensation Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ErrCompAnalysisTextBlock" xlink:label="ecd_ErrCompAnalysisTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ErrCompAnalysisTextBlock" xlink:to="ecd_ErrCompAnalysisTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ErrCompAnalysisTextBlock_lbl" xml:lang="en-US">Erroneous Compensation Analysis</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:label="ecd_StkPrcOrTsrEstimationMethodTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:to="ecd_StkPrcOrTsrEstimationMethodTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_StkPrcOrTsrEstimationMethodTextBlock_lbl" xml:lang="en-US">Stock Price or TSR Estimation Method</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OutstandingAggtErrCompAmt" xlink:label="ecd_OutstandingAggtErrCompAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_OutstandingAggtErrCompAmt" xlink:to="ecd_OutstandingAggtErrCompAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_OutstandingAggtErrCompAmt_lbl" xml:lang="en-US">Outstanding Aggregate Erroneous Compensation Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:label="ecd_AggtErrCompNotYetDeterminedTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:to="ecd_AggtErrCompNotYetDeterminedTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AggtErrCompNotYetDeterminedTextBlock_lbl" xml:lang="en-US">Aggregate Erroneous Compensation Not Yet Determined</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryIndName" xlink:label="ecd_ForgoneRecoveryIndName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ForgoneRecoveryIndName" xlink:to="ecd_ForgoneRecoveryIndName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="ecd_ForgoneRecoveryIndName_lbl" xml:lang="en-US">Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:label="ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:to="ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt_lbl" xml:lang="en-US">Forgone Recovery due to Expense of Enforcement, Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:label="ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:to="ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt_lbl" xml:lang="en-US">Forgone Recovery due to Violation of Home Country Law, Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:label="ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:to="ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt_lbl" xml:lang="en-US">Forgone Recovery due to Disqualification of Tax Benefits, Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:label="ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:to="ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock_lbl" xml:lang="en-US">Forgone Recovery, Explanation of Impracticability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OutstandingRecoveryIndName" xlink:label="ecd_OutstandingRecoveryIndName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_OutstandingRecoveryIndName" xlink:to="ecd_OutstandingRecoveryIndName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="ecd_OutstandingRecoveryIndName_lbl" xml:lang="en-US">Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OutstandingRecoveryCompAmt" xlink:label="ecd_OutstandingRecoveryCompAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_OutstandingRecoveryCompAmt" xlink:to="ecd_OutstandingRecoveryCompAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_OutstandingRecoveryCompAmt_lbl" xml:lang="en-US">Compensation Amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:label="ecd_RestatementDoesNotRequireRecoveryTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:to="ecd_RestatementDoesNotRequireRecoveryTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_RestatementDoesNotRequireRecoveryTextBlock_lbl" xml:lang="en-US">Restatement does not require Recovery</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardsCloseToMnpiDiscTable" xlink:label="ecd_AwardsCloseToMnpiDiscTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardsCloseToMnpiDiscTable" xlink:to="ecd_AwardsCloseToMnpiDiscTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardsCloseToMnpiDiscTable_lbl" xml:lang="en-US">Awards Close in Time to MNPI Disclosures [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgMnpiDiscTextBlock" xlink:label="ecd_AwardTmgMnpiDiscTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardTmgMnpiDiscTextBlock" xlink:to="ecd_AwardTmgMnpiDiscTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardTmgMnpiDiscTextBlock_lbl" xml:lang="en-US">Award Timing MNPI Disclosure</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgMethodTextBlock" xlink:label="ecd_AwardTmgMethodTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardTmgMethodTextBlock" xlink:to="ecd_AwardTmgMethodTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardTmgMethodTextBlock_lbl" xml:lang="en-US">Award Timing Method</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgPredtrmndFlag" xlink:label="ecd_AwardTmgPredtrmndFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardTmgPredtrmndFlag" xlink:to="ecd_AwardTmgPredtrmndFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardTmgPredtrmndFlag_lbl" xml:lang="en-US">Award Timing Predetermined</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgMnpiCnsdrdFlag" xlink:label="ecd_AwardTmgMnpiCnsdrdFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardTmgMnpiCnsdrdFlag" xlink:to="ecd_AwardTmgMnpiCnsdrdFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardTmgMnpiCnsdrdFlag_lbl" xml:lang="en-US">Award Timing MNPI Considered</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:label="ecd_AwardTmgHowMnpiCnsdrdTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:to="ecd_AwardTmgHowMnpiCnsdrdTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardTmgHowMnpiCnsdrdTextBlock_lbl" xml:lang="en-US">Award Timing, How MNPI Considered</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MnpiDiscTimedForCompValFlag" xlink:label="ecd_MnpiDiscTimedForCompValFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_MnpiDiscTimedForCompValFlag" xlink:to="ecd_MnpiDiscTimedForCompValFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_MnpiDiscTimedForCompValFlag_lbl" xml:lang="en-US">MNPI Disclosure Timed for Compensation Value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:label="ecd_AwardsCloseToMnpiDiscTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:to="ecd_AwardsCloseToMnpiDiscTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardsCloseToMnpiDiscTableTextBlock_lbl" xml:lang="en-US">Awards Close in Time to MNPI Disclosures, Table</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardsCloseToMnpiDiscIndName" xlink:label="ecd_AwardsCloseToMnpiDiscIndName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardsCloseToMnpiDiscIndName" xlink:to="ecd_AwardsCloseToMnpiDiscIndName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="ecd_AwardsCloseToMnpiDiscIndName_lbl" xml:lang="en-US">Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardUndrlygSecuritiesAmt" xlink:label="ecd_AwardUndrlygSecuritiesAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardUndrlygSecuritiesAmt" xlink:to="ecd_AwardUndrlygSecuritiesAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardUndrlygSecuritiesAmt_lbl" xml:lang="en-US">Underlying Securities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardExrcPrice" xlink:label="ecd_AwardExrcPrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardExrcPrice" xlink:to="ecd_AwardExrcPrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardExrcPrice_lbl" xml:lang="en-US">Exercise Price</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardGrantDateFairValue" xlink:label="ecd_AwardGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardGrantDateFairValue" xlink:to="ecd_AwardGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardGrantDateFairValue_lbl" xml:lang="en-US">Fair Value as of Grant Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_UndrlygSecurityMktPriceChngPct" xlink:label="ecd_UndrlygSecurityMktPriceChngPct" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_UndrlygSecurityMktPriceChngPct" xlink:to="ecd_UndrlygSecurityMktPriceChngPct_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_UndrlygSecurityMktPriceChngPct_lbl" xml:lang="en-US">Underlying Security Market Price Change</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTradingArrLineItems" xlink:label="ecd_InsiderTradingArrLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_InsiderTradingArrLineItems" xlink:to="ecd_InsiderTradingArrLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_InsiderTradingArrLineItems_lbl" xml:lang="en-US">Insider Trading Arrangements [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MtrlTermsOfTrdArrTextBlock" xlink:label="ecd_MtrlTermsOfTrdArrTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_MtrlTermsOfTrdArrTextBlock" xlink:to="ecd_MtrlTermsOfTrdArrTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_MtrlTermsOfTrdArrTextBlock_lbl" xml:lang="en-US">Material Terms of Trading Arrangement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrIndName" xlink:label="ecd_TrdArrIndName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrIndName" xlink:to="ecd_TrdArrIndName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="ecd_TrdArrIndName_lbl" xml:lang="en-US">Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrIndTitle" xlink:label="ecd_TrdArrIndTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrIndTitle" xlink:to="ecd_TrdArrIndTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TrdArrIndTitle_lbl" xml:lang="en-US">Title</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_Rule10b51ArrAdoptedFlag" xlink:label="ecd_Rule10b51ArrAdoptedFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_Rule10b51ArrAdoptedFlag" xlink:to="ecd_Rule10b51ArrAdoptedFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_Rule10b51ArrAdoptedFlag_lbl" xml:lang="en-US">Rule 10b5-1 Arrangement Adopted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonRule10b51ArrAdoptedFlag" xlink:label="ecd_NonRule10b51ArrAdoptedFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_NonRule10b51ArrAdoptedFlag" xlink:to="ecd_NonRule10b51ArrAdoptedFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_NonRule10b51ArrAdoptedFlag_lbl" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Adopted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrAdoptionDate" xlink:label="ecd_TrdArrAdoptionDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrAdoptionDate" xlink:to="ecd_TrdArrAdoptionDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TrdArrAdoptionDate_lbl" xml:lang="en-US">Adoption Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_Rule10b51ArrTrmntdFlag" xlink:label="ecd_Rule10b51ArrTrmntdFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_Rule10b51ArrTrmntdFlag" xlink:to="ecd_Rule10b51ArrTrmntdFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_Rule10b51ArrTrmntdFlag_lbl" xml:lang="en-US">Rule 10b5-1 Arrangement Terminated</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonRule10b51ArrTrmntdFlag" xlink:label="ecd_NonRule10b51ArrTrmntdFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_NonRule10b51ArrTrmntdFlag" xlink:to="ecd_NonRule10b51ArrTrmntdFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_NonRule10b51ArrTrmntdFlag_lbl" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Terminated</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrTerminationDate" xlink:label="ecd_TrdArrTerminationDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrTerminationDate" xlink:to="ecd_TrdArrTerminationDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TrdArrTerminationDate_lbl" xml:lang="en-US">Termination Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrExpirationDate" xlink:label="ecd_TrdArrExpirationDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrExpirationDate" xlink:to="ecd_TrdArrExpirationDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TrdArrExpirationDate_lbl" xml:lang="en-US">Expiration Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrDuration" xlink:label="ecd_TrdArrDuration" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrDuration" xlink:to="ecd_TrdArrDuration_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TrdArrDuration_lbl" xml:lang="en-US">Arrangement Duration</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrSecuritiesAggAvailAmt" xlink:label="ecd_TrdArrSecuritiesAggAvailAmt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrSecuritiesAggAvailAmt" xlink:to="ecd_TrdArrSecuritiesAggAvailAmt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TrdArrSecuritiesAggAvailAmt_lbl" xml:lang="en-US">Aggregate Available</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTradingPoliciesProcLineItems" xlink:label="ecd_InsiderTradingPoliciesProcLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_InsiderTradingPoliciesProcLineItems" xlink:to="ecd_InsiderTradingPoliciesProcLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_InsiderTradingPoliciesProcLineItems_lbl" xml:lang="en-US">Insider Trading Policies and Procedures [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:label="ecd_InsiderTrdPoliciesProcAdoptedFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:to="ecd_InsiderTrdPoliciesProcAdoptedFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_InsiderTrdPoliciesProcAdoptedFlag_lbl" xml:lang="en-US">Insider Trading Policies and Procedures Adopted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:label="ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:to="ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock_lbl" xml:lang="en-US">Insider Trading Policies and Procedures Not Adopted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl" xml:lang="en-US">General</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">Basis of Presentation and Summary of Significant Accounting Policies</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl" xml:lang="en-US">Business Combination, Asset Acquisition, Transaction between Entities under Common Control, and Joint Venture Formation [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock_lbl" xml:lang="en-US">Acquisitions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureAbstract_lbl" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xml:lang="en-US">Inventories, net</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_2_lbl" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xml:lang="en-US">Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xml:lang="en-US">Intangible Asset, Goodwill and Other [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_IntangibleAssetsDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock_lbl" xml:lang="en-US">Intangible Assets and Goodwill</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_PayablesAndAccrualsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PayablesAndAccrualsAbstract_lbl" xml:lang="en-US">Payables and Accruals [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SupplierFinanceProgramTextBlock" xlink:label="us-gaap_SupplierFinanceProgramTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplierFinanceProgramTextBlock" xlink:to="us-gaap_SupplierFinanceProgramTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplierFinanceProgramTextBlock_lbl" xml:lang="en-US">Supplier Finance Program</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xml:lang="en-US">Debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_lbl" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:to="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_lbl" xml:lang="en-US">Derivative Financial Instruments and Fair Value Measurements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xml:lang="en-US">Income Taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsAbstract_lbl" xml:lang="en-US">Related Party Transactions [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" xml:lang="en-US">Related Parties</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_EquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityAbstract_lbl" xml:lang="en-US">Equity [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xml:lang="en-US">Shareholders&#8217; Equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xml:lang="en-US">Commitments and Contingencies</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xml:lang="en-US">Basis of Presentation and Use of Estimates</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConsolidationPolicyTextBlock" xlink:to="us-gaap_ConsolidationPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConsolidationPolicyTextBlock_lbl" xml:lang="en-US">Principles of Consolidation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="us-gaap_DerivativesPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativesPolicyTextBlock" xlink:to="us-gaap_DerivativesPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativesPolicyTextBlock_lbl" xml:lang="en-US">Derivative Financial Instruments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ExtendedProductWarrantyPolicy" xlink:label="us-gaap_ExtendedProductWarrantyPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExtendedProductWarrantyPolicy" xlink:to="us-gaap_ExtendedProductWarrantyPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ExtendedProductWarrantyPolicy_lbl" xml:lang="en-US">Product Warranties</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" xlink:label="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" xlink:to="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_lbl" xml:lang="en-US">Recovery of Previously Paid Import Tariffs</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xml:lang="en-US">Recently Issued Accounting Pronouncements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl" xml:lang="en-US">Schedule of Product Warranty Liability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xml:lang="en-US">Schedule of Purchase Price Allocation Consideration Transferred</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xml:lang="en-US">Schedule of Inventories</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xml:lang="en-US">Schedule of Disaggregation by Revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl" xml:lang="en-US">Schedule of Geographic Information</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" xlink:label="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" xlink:to="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_lbl" xml:lang="en-US">Schedule of Revenues Distribution By End Market</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl" xml:lang="en-US">Schedule of Trade Accounts Receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" xlink:label="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" xlink:to="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_lbl" xml:lang="en-US">Schedule of Changes in Allowance for Doubtful Accounts Receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xml:lang="en-US">Schedule of Contract Assets and Liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US">Schedule of Finite Lived Intangible Assets Future Amortization Expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfDebtTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock_lbl" xml:lang="en-US">Schedule of Long Term Debt</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" xlink:label="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" xlink:to="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_lbl" xml:lang="en-US">Schedule of Interest Income Expenses net and deferred cost</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl" xml:lang="en-US">Schedule of Maturities of Long Term Debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_lbl" xml:lang="en-US">Schedule of Future Minimum Lease Payments</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" xlink:label="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" xlink:to="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_lbl" xml:lang="en-US">Schedule of Fair Value of Foreign Currency Hedges</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:to="us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_lbl" xml:lang="en-US">Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:to="us-gaap_ScheduleOfDebtInstrumentsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDebtInstrumentsTextBlock_lbl" xml:lang="en-US">Schedule of Fair Value and Carrying Amounts of Long Term Debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xml:lang="en-US">Schedule of Components of Income Tax Expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:to="us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_lbl" xml:lang="en-US">Schedule of Related Parties</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock" xlink:label="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock" xlink:to="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock_lbl" xml:lang="en-US">Schedule of Sale to Related Parties</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrual_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StandardProductWarrantyAccrual_lbl" xml:lang="en-US">Balance at beginning of period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:to="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_lbl" xml:lang="en-US">Accruals for product warranties issued during period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualPayments" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments_lbl" xml:lang="en-US">Reductions for payments made under product warranties</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrual_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StandardProductWarrantyAccrual_2_lbl" xml:lang="en-US">Balance at end of period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyDescription" xlink:label="us-gaap_StandardProductWarrantyDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyDescription" xlink:to="us-gaap_StandardProductWarrantyDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyDescription_lbl" xml:lang="en-US">Product warranties description</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RecoveryOfPreviouslyPaidImportTariffs" xlink:label="TGLS_RecoveryOfPreviouslyPaidImportTariffs" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_RecoveryOfPreviouslyPaidImportTariffs" xlink:to="TGLS_RecoveryOfPreviouslyPaidImportTariffs_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_RecoveryOfPreviouslyPaidImportTariffs_lbl" xml:lang="en-US">Recovery of previously paid import tariffs</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:label="TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:to="TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable_lbl" xml:lang="en-US">ScheduleOfPurchasePriceAllocationConsiderationTransferredTable [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xml:lang="en-US">Total purchase price</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xml:lang="en-US">Cash and equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_lbl" xml:lang="en-US">Accounts Receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_lbl" xml:lang="en-US">Other Current Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl" xml:lang="en-US">Property, plant, and equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_lbl" xml:lang="en-US">Trade Name</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_lbl" xml:lang="en-US">Contract Backlog</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_lbl" xml:lang="en-US">Notice of Acceptance and FBC permits</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_lbl" xml:lang="en-US">Right-of-use assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_lbl" xml:lang="en-US">Account payable</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_lbl" xml:lang="en-US">Accrued expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_lbl" xml:lang="en-US">Service revenue deposit</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_lbl" xml:lang="en-US">Lease liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_lbl" xml:lang="en-US">Billings in excess of cost and profit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_lbl" xml:lang="en-US">Total identifiable net assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_lbl" xml:lang="en-US">Goodwill</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_lbl" xml:lang="en-US">Business Combination [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionLineItems_lbl" xml:lang="en-US">Business Combination [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationPriceOfAcquisitionExpected" xlink:label="us-gaap_BusinessCombinationPriceOfAcquisitionExpected" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationPriceOfAcquisitionExpected" xlink:to="us-gaap_BusinessCombinationPriceOfAcquisitionExpected_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationPriceOfAcquisitionExpected_lbl" xml:lang="en-US">Purchase price for acquisition</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:to="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_lbl" xml:lang="en-US">Acquisition-related costs</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_WorkingCapitalAdjustment" xlink:label="TGLS_WorkingCapitalAdjustment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_WorkingCapitalAdjustment" xlink:to="TGLS_WorkingCapitalAdjustment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_WorkingCapitalAdjustment_lbl" xml:lang="en-US">Working capital adjustment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xml:lang="en-US">Intangible asset, finite-lived, useful life</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryRawMaterials" xlink:label="us-gaap_InventoryRawMaterials" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterials" xlink:to="us-gaap_InventoryRawMaterials_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryRawMaterials_lbl" xml:lang="en-US">Raw materials</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryWorkInProcess" xlink:label="us-gaap_InventoryWorkInProcess" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcess" xlink:to="us-gaap_InventoryWorkInProcess_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryWorkInProcess_lbl" xml:lang="en-US">Work in process</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoods" xlink:to="us-gaap_InventoryFinishedGoods_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryFinishedGoods_lbl" xml:lang="en-US">Finished goods</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherInventoriesSpareParts" xlink:label="us-gaap_OtherInventoriesSpareParts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherInventoriesSpareParts" xlink:to="us-gaap_OtherInventoriesSpareParts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherInventoriesSpareParts_lbl" xml:lang="en-US">Spares and accessories</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InventoryPackingMaterialGross" xlink:label="TGLS_InventoryPackingMaterialGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InventoryPackingMaterialGross" xlink:to="TGLS_InventoryPackingMaterialGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_InventoryPackingMaterialGross_lbl" xml:lang="en-US">Packing material</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryGross" xlink:label="us-gaap_InventoryGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryGross" xlink:to="us-gaap_InventoryGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_InventoryGross_lbl" xml:lang="en-US">Total Inventories, gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryValuationReserves" xlink:label="us-gaap_InventoryValuationReserves" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryValuationReserves" xlink:to="us-gaap_InventoryValuationReserves_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_InventoryValuationReserves_lbl" xml:lang="en-US">Less: Inventory allowance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_InventoryNet_2_lbl" xml:lang="en-US">Total inventories, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueTable_lbl" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfReportableSegments" xlink:to="us-gaap_NumberOfReportableSegments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NumberOfReportableSegments_lbl" xml:lang="en-US">Number of reportable segment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_2_lbl" xml:lang="en-US">Total Revenues</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="us-gaap_AccountsReceivableGrossCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableGrossCurrent" xlink:to="us-gaap_AccountsReceivableGrossCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableGrossCurrent_lbl" xml:lang="en-US">Short-term trade accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xml:lang="en-US">Less: Allowance for credit losses</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsReceivableNetCurrent_2_lbl" xml:lang="en-US">Total short-term trade accounts receivable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetNoncurrent" xlink:to="us-gaap_AccountsReceivableNetNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsReceivableNetNoncurrent_2_lbl" xml:lang="en-US">Long term trade accounts</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNet" xlink:label="us-gaap_AccountsReceivableNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNet" xlink:to="us-gaap_AccountsReceivableNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AccountsReceivableNet_lbl" xml:lang="en-US">Total trade accounts receivable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_2_lbl" xml:lang="en-US">Balance at beginning of period</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForDoubtfulAccounts" xlink:to="us-gaap_ProvisionForDoubtfulAccounts_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_2_lbl" xml:lang="en-US">Provisions for credit losses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_lbl" xml:lang="en-US">Deductions and write-offs, net of foreign currency adjustment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_3_lbl" xml:lang="en-US">Balance at end of period</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_2_lbl" xml:lang="en-US">Less: current portion</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ContractWithCustomerAssetNetNoncurrent_2_lbl" xml:lang="en-US">Contract Assets &#8211; non-current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_2_lbl" xml:lang="en-US">Contract liabilities &#8212; current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent_2_lbl" xml:lang="en-US">Contract liabilities &#8212; non-current</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NetContractLiabilitiesAssets" xlink:label="TGLS_NetContractLiabilitiesAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_NetContractLiabilitiesAssets" xlink:to="TGLS_NetContractLiabilitiesAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="TGLS_NetContractLiabilitiesAssets_lbl" xml:lang="en-US">Net contract liability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="us-gaap_UnbilledReceivablesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnbilledReceivablesCurrent" xlink:to="us-gaap_UnbilledReceivablesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnbilledReceivablesCurrent_lbl" xml:lang="en-US">Unbilled contract receivables, gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ConstructionContractorReceivableRetainage" xlink:label="us-gaap_ConstructionContractorReceivableRetainage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConstructionContractorReceivableRetainage" xlink:to="us-gaap_ConstructionContractorReceivableRetainage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConstructionContractorReceivableRetainage_lbl" xml:lang="en-US">Retainage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetGrossCurrent" xlink:label="us-gaap_ContractWithCustomerAssetGrossCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetGrossCurrent" xlink:to="us-gaap_ContractWithCustomerAssetGrossCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ContractWithCustomerAssetGrossCurrent_lbl" xml:lang="en-US">Total contract assets</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BillingsInExcessOfCosts" xlink:label="TGLS_BillingsInExcessOfCosts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BillingsInExcessOfCosts" xlink:to="TGLS_BillingsInExcessOfCosts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_BillingsInExcessOfCosts_lbl" xml:lang="en-US">Billings in excess of costs</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" xlink:label="us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" xlink:to="us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms_lbl" xml:lang="en-US">Advances from customers on uncompleted contracts</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ContractWithCustomerLiability_lbl" xml:lang="en-US">Total contract liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_3_lbl" xml:lang="en-US">Less: current portion</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent_3_lbl" xml:lang="en-US">Contract liabilities &#8211; non-current</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:label="TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:to="TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable_lbl" xml:lang="en-US">RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xml:lang="en-US">Sales related to contract liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligation" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xml:lang="en-US">Remaining performance obligation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:to="us-gaap_RevenueRemainingPerformanceObligationPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRemainingPerformanceObligationPercentage_lbl" xml:lang="en-US">Performance obligation, percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xml:lang="en-US">Intangible Asset, Finite-Lived [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xml:lang="en-US">Intangible Asset, Finite-Lived [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xml:lang="en-US">Intangible assets, Gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US">Intangible assets, Accumulated amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Intangible assets, Net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_lbl" xml:lang="en-US">2026</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xml:lang="en-US">2027</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xml:lang="en-US">2028</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xml:lang="en-US">2029</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" xlink:label="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" xlink:to="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_lbl" xml:lang="en-US">Thereafter</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_2_lbl" xml:lang="en-US">Total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl" xml:lang="en-US">Weighted average amortization period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xml:lang="en-US">Amortization expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:label="us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:to="us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable_lbl" xml:lang="en-US">Debt Securities, Held-to-Maturity, Allowance for Credit Loss [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:label="us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems_lbl" xml:lang="en-US">Debt Securities, Held-to-Maturity, Allowance for Credit Loss [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProgramRightsObligationsCurrent" xlink:label="us-gaap_ProgramRightsObligationsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProgramRightsObligationsCurrent" xlink:to="us-gaap_ProgramRightsObligationsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProgramRightsObligationsCurrent_lbl" xml:lang="en-US">Current liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesCurrent" xlink:to="us-gaap_OtherLiabilitiesCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherLiabilitiesCurrent_2_lbl" xml:lang="en-US">Due to related parties</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCredit" xlink:to="us-gaap_LineOfCredit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCredit_lbl" xml:lang="en-US">Revolving lines of credit</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseDebt" xlink:label="TGLS_FinanceLeaseDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseDebt" xlink:to="TGLS_FinanceLeaseDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FinanceLeaseDebt_lbl" xml:lang="en-US">Finance lease</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLongTermDebtCurrent" xlink:label="us-gaap_OtherLongTermDebtCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLongTermDebtCurrent" xlink:to="us-gaap_OtherLongTermDebtCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherLongTermDebtCurrent_lbl" xml:lang="en-US">Other current debt</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacility" xlink:label="TGLS_SeniorSecuredCreditFacility" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SeniorSecuredCreditFacility" xlink:to="TGLS_SeniorSecuredCreditFacility_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_SeniorSecuredCreditFacility_lbl" xml:lang="en-US">Senior Secured Credit Facility</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredCostsCurrent" xlink:label="us-gaap_DeferredCostsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredCostsCurrent" xlink:to="us-gaap_DeferredCostsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredCostsCurrent_lbl" xml:lang="en-US">Less: Deferred cost of financing</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_DebtInstrumentCarryingAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xml:lang="en-US">Total obligations under borrowing arrangements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xml:lang="en-US">Less: Current portion of long-term debt and other current borrowings</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpense" xlink:to="us-gaap_InterestExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestExpense_lbl" xml:lang="en-US">Interest expense</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeferredCostsOfFinancing" xlink:label="TGLS_DeferredCostsOfFinancing" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DeferredCostsOfFinancing" xlink:to="TGLS_DeferredCostsOfFinancing_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="TGLS_DeferredCostsOfFinancing_lbl" xml:lang="en-US">Deferred cost of financing</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DerivativeFinancialInstrumentGain" xlink:label="TGLS_DerivativeFinancialInstrumentGain" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DerivativeFinancialInstrumentGain" xlink:to="TGLS_DerivativeFinancialInstrumentGain_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_DerivativeFinancialInstrumentGain_lbl" xml:lang="en-US">Derivative financial instrument loss</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing" xlink:label="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing" xlink:to="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing_lbl" xml:lang="en-US">Interest expense, net and deferred cost of financing:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl" xml:lang="en-US">2026</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl" xml:lang="en-US">2027</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl" xml:lang="en-US">2028</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl" xml:lang="en-US">2029</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl" xml:lang="en-US">2030</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LongTermDebt_lbl" xml:lang="en-US">Total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US">2026</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US">2027</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US">2028</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl" xml:lang="en-US">2029</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour_lbl" xml:lang="en-US">2030 and thereafter</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl" xml:lang="en-US">Total undiscounted cashflows</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US">Less: Imputed Interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_FinanceLeaseLiability_lbl" xml:lang="en-US">Present value of lease liability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityTable_lbl" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xml:lang="en-US">Line of credit facility, maximum borrowing capacity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="us-gaap_DebtInstrumentMaturityDateDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDateDescription" xlink:to="us-gaap_DebtInstrumentMaturityDateDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentMaturityDateDescription_lbl" xml:lang="en-US">Loan maturity period description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:to="us-gaap_DebtInstrumentInterestRateEffectivePercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage_lbl" xml:lang="en-US">Debt instrument interest rate effective percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDebtIssuanceCosts" xlink:to="us-gaap_PaymentsOfDebtIssuanceCosts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsOfDebtIssuanceCosts_lbl" xml:lang="en-US">Cost and fees</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:to="us-gaap_GainsLossesOnExtinguishmentOfDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainsLossesOnExtinguishmentOfDebt_lbl" xml:lang="en-US">Loss on extinguishment of debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:label="us-gaap_WriteOffOfDeferredDebtIssuanceCost" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:to="us-gaap_WriteOffOfDeferredDebtIssuanceCost_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WriteOffOfDeferredDebtIssuanceCost_lbl" xml:lang="en-US">Write-off of the remaining unamortized</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_TerminationCosts" xlink:label="TGLS_TerminationCosts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_TerminationCosts" xlink:to="TGLS_TerminationCosts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_TerminationCosts_lbl" xml:lang="en-US">Termination costs</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LegalFees" xlink:label="us-gaap_LegalFees" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LegalFees" xlink:to="us-gaap_LegalFees_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LegalFees_lbl" xml:lang="en-US">Cost and fees</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeductedFromProceedsFromIssuanceOfDebt" xlink:label="TGLS_DeductedFromProceedsFromIssuanceOfDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DeductedFromProceedsFromIssuanceOfDebt" xlink:to="TGLS_DeductedFromProceedsFromIssuanceOfDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_DeductedFromProceedsFromIssuanceOfDebt_lbl" xml:lang="en-US">Deducted from proceeds from debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredFinanceCostsNoncurrentNet" xlink:label="us-gaap_DeferredFinanceCostsNoncurrentNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFinanceCostsNoncurrentNet" xlink:to="us-gaap_DeferredFinanceCostsNoncurrentNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFinanceCostsNoncurrentNet_lbl" xml:lang="en-US">Deferred financing costs</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfDebt" xlink:to="us-gaap_RepaymentsOfDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RepaymentsOfDebt_2_lbl" xml:lang="en-US">Repayment of debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtWeightedAverageInterestRate" xlink:label="us-gaap_DebtWeightedAverageInterestRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtWeightedAverageInterestRate" xlink:to="us-gaap_DebtWeightedAverageInterestRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtWeightedAverageInterestRate_lbl" xml:lang="en-US">Debt, weighted average interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset_lbl" xml:lang="en-US">Right-of-use assets</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" xlink:label="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" xlink:to="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_lbl" xml:lang="en-US">Finance lease right of use asset included property, plant and equipment, and lease liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseShortTermDebt" xlink:label="TGLS_FinanceLeaseShortTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseShortTermDebt" xlink:to="TGLS_FinanceLeaseShortTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FinanceLeaseShortTermDebt_lbl" xml:lang="en-US">Finance lease, short-term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseLongTermDebt" xlink:label="TGLS_FinanceLeaseLongTermDebt" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseLongTermDebt" xlink:to="TGLS_FinanceLeaseLongTermDebt_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FinanceLeaseLongTermDebt_lbl" xml:lang="en-US">Finance lease, long-term debt</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization_lbl" xml:lang="en-US">ROU asset amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseInterestExpense" xlink:to="us-gaap_FinanceLeaseInterestExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseInterestExpense_lbl" xml:lang="en-US">Interest expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeasePrincipalPayments_lbl" xml:lang="en-US">Cash paid for amounts included in the measurement of lease liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" xlink:label="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" xlink:to="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_lbl" xml:lang="en-US">Cash paid for amounts included in measurement of lease liabilities classified as operating cash flows</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" xlink:label="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" xlink:to="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_lbl" xml:lang="en-US">Cash paid for amounts included in measurement of lease liabilities classified as financing cash flows</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" xlink:label="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" xlink:to="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_lbl" xml:lang="en-US">Non-cash additions to ROU assets in exchange for lease liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_lbl" xml:lang="en-US">Weighted-average remaining lease term</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_lbl" xml:lang="en-US">Weighted-average discount rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_lbl" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="us-gaap_DerivativeInstrumentsGainLossLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:to="us-gaap_DerivativeInstrumentsGainLossLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentsGainLossLineItems_lbl" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_StatementOfBalanceSheetLocationAxis" xlink:to="TGLS_StatementOfBalanceSheetLocationAxis_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="TGLS_StatementOfBalanceSheetLocationAxis_2_lbl" xml:lang="en-US">StatementOfBalanceSheetLocationAxis [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedges" xlink:label="us-gaap_DerivativeInstrumentsAndHedges" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedges" xlink:to="us-gaap_DerivativeInstrumentsAndHedges_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentsAndHedges_lbl" xml:lang="en-US">Total derivative assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgesLiabilities" xlink:label="us-gaap_DerivativeInstrumentsAndHedgesLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedgesLiabilities" xlink:to="us-gaap_DerivativeInstrumentsAndHedgesLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeInstrumentsAndHedgesLiabilities_lbl" xml:lang="en-US">Total derivative liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DerivativeGainLossesOnDerivativeNet" xlink:label="TGLS_DerivativeGainLossesOnDerivativeNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DerivativeGainLossesOnDerivativeNet" xlink:to="TGLS_DerivativeGainLossesOnDerivativeNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_DerivativeGainLossesOnDerivativeNet_lbl" xml:lang="en-US">Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtFairValue" xlink:label="us-gaap_LongTermDebtFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtFairValue" xlink:to="us-gaap_LongTermDebtFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtFairValue_lbl" xml:lang="en-US">Fair Value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtNoncurrent_2_lbl" xml:lang="en-US">Carrying Value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="us-gaap_DerivativeFixedInterestRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeFixedInterestRate" xlink:to="us-gaap_DerivativeFixedInterestRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeFixedInterestRate_lbl" xml:lang="en-US">Derivative fixed interest rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xml:lang="en-US">Debt instrument basis spread on variable rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeAssets" xlink:label="us-gaap_DerivativeAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeAssets" xlink:to="us-gaap_DerivativeAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DerivativeAssets_lbl" xml:lang="en-US">Derivative assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestEarningAssetsAverageAmountOutstanding" xlink:label="us-gaap_InterestEarningAssetsAverageAmountOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestEarningAssetsAverageAmountOutstanding" xlink:to="us-gaap_InterestEarningAssetsAverageAmountOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestEarningAssetsAverageAmountOutstanding_lbl" xml:lang="en-US">Interest earning assets average outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtAverageAmountOutstanding" xlink:label="us-gaap_LongTermDebtAverageAmountOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtAverageAmountOutstanding" xlink:to="us-gaap_LongTermDebtAverageAmountOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtAverageAmountOutstanding_lbl" xml:lang="en-US">Debt outstanding amount</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_2_lbl" xml:lang="en-US">Accumulated other comprehensive income net of tax</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DerivativeInstrumentsAndHedges" xlink:to="us-gaap_DerivativeInstrumentsAndHedges_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DerivativeInstrumentsAndHedges_2_lbl" xml:lang="en-US">Accumulated other comprehensive income net of tax</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExaminationTable" xlink:label="us-gaap_IncomeTaxExaminationTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExaminationTable" xlink:to="us-gaap_IncomeTaxExaminationTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExaminationTable_lbl" xml:lang="en-US">Income Tax, Examination [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExaminationLineItems" xlink:label="us-gaap_IncomeTaxExaminationLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExaminationLineItems" xlink:to="us-gaap_IncomeTaxExaminationLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExaminationLineItems_lbl" xml:lang="en-US">Income Tax Examination [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Total current income tax</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Total deferred income tax</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Total income provision</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xml:lang="en-US">Effective tax rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xml:lang="en-US">Statutory income tax rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xml:lang="en-US">Weighted average statutory rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_lbl" xml:lang="en-US">Related Party Transaction [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="us-gaap_RelatedPartyTransactionLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionLineItems" xlink:to="us-gaap_RelatedPartyTransactionLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionLineItems_lbl" xml:lang="en-US">Related Party Transaction [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherReceivablesNetCurrent" xlink:to="us-gaap_OtherReceivablesNetCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherReceivablesNetCurrent_2_lbl" xml:lang="en-US">Total due from related parties</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesCurrent" xlink:to="us-gaap_OtherLiabilitiesCurrent_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherLiabilitiesCurrent_3_lbl" xml:lang="en-US">Total due to related parties</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Revenues_lbl" xml:lang="en-US">Sales to related parties</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Revenues_2_lbl" xml:lang="en-US">Revenue from related parties</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNet" xlink:to="us-gaap_AccountsReceivableNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNet_2_lbl" xml:lang="en-US">Accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CashContributionsForSocialCauses" xlink:label="TGLS_CashContributionsForSocialCauses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CashContributionsForSocialCauses" xlink:to="TGLS_CashContributionsForSocialCauses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_CashContributionsForSocialCauses_lbl" xml:lang="en-US">Cash contributions for social causes</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PurchasePriceOfFuel" xlink:label="TGLS_PurchasePriceOfFuel" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_PurchasePriceOfFuel" xlink:to="TGLS_PurchasePriceOfFuel_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_PurchasePriceOfFuel_lbl" xml:lang="en-US">Purchases of fuel</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" xml:lang="en-US">Equity method investment ownership percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Investments" xlink:label="us-gaap_Investments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Investments" xlink:to="us-gaap_Investments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Investments_lbl" xml:lang="en-US">Investments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByParent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent_lbl" xml:lang="en-US">Minority interest ownership</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_2_lbl" xml:lang="en-US">Purchase price of interest</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="us-gaap_PaymentsToAcquireBusinessesGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireBusinessesGross_lbl" xml:lang="en-US">Payment of cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_lbl" xml:lang="en-US">Land contribution value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:to="us-gaap_StockIssuedDuringPeriodSharesAcquisitions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions_lbl" xml:lang="en-US">Shares issued during acquisition</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharesIssuedPricePerShare" xlink:label="us-gaap_SharesIssuedPricePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesIssuedPricePerShare" xlink:to="us-gaap_SharesIssuedPricePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesIssuedPricePerShare_lbl" xml:lang="en-US">Shares issued, price per share</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PremiumClosingStockPercentage" xlink:label="TGLS_PremiumClosingStockPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_PremiumClosingStockPercentage" xlink:to="TGLS_PremiumClosingStockPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_PremiumClosingStockPercentage_lbl" xml:lang="en-US">Premium closing stock, percent</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ExpectedOwnershipPercentage" xlink:label="TGLS_ExpectedOwnershipPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ExpectedOwnershipPercentage" xlink:to="TGLS_ExpectedOwnershipPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_ExpectedOwnershipPercentage_lbl" xml:lang="en-US">Expected ownership percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FutureAdditionalContributionAmount" xlink:label="TGLS_FutureAdditionalContributionAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FutureAdditionalContributionAmount" xlink:to="TGLS_FutureAdditionalContributionAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_FutureAdditionalContributionAmount_lbl" xml:lang="en-US">Additional contribution amount</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireProductiveAssets" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireProductiveAssets" xlink:to="us-gaap_PaymentsToAcquireProductiveAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireProductiveAssets_lbl" xml:lang="en-US">Purchase from related party</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xml:lang="en-US">Payable outstanding</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments_2_lbl" xml:lang="en-US">Equity method income</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetIncomeLoss_4_lbl" xml:lang="en-US">Net Income attributable to parent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2_lbl" xml:lang="en-US">Denominator for basic earnings per ordinary share - weighted average shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_EffectOfDilutiveSecuritiesAndStockDividend" xlink:label="TGLS_EffectOfDilutiveSecuritiesAndStockDividend" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_EffectOfDilutiveSecuritiesAndStockDividend" xlink:to="TGLS_EffectOfDilutiveSecuritiesAndStockDividend_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_EffectOfDilutiveSecuritiesAndStockDividend_lbl" xml:lang="en-US">Effect of dilutive securities and stock dividend</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2_lbl" xml:lang="en-US">Denominator for diluted earnings per ordinary share - weighted average shares outstanding</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareBasic_2_lbl" xml:lang="en-US">Basic earnings per ordinary share</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareDiluted_2_lbl" xml:lang="en-US">Diluted earnings per ordinary share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossTable_lbl" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems_lbl" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss) [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharePrice" xlink:to="us-gaap_SharePrice_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SharePrice_2_lbl" xml:lang="en-US">Share price</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockSharesAcquired" xlink:to="us-gaap_TreasuryStockSharesAcquired_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_TreasuryStockSharesAcquired_2_lbl" xml:lang="en-US">Number of shares repurchased</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod_2_lbl" xml:lang="en-US">Value of shares repurchased</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockValue_2_lbl" xml:lang="en-US">Treasury shares, aggregate repurchase cost</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LossContingenciesTable" xlink:label="us-gaap_LossContingenciesTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesTable" xlink:to="us-gaap_LossContingenciesTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LossContingenciesTable_lbl" xml:lang="en-US">Loss Contingencies [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LossContingenciesLineItems" xlink:label="us-gaap_LossContingenciesLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesLineItems" xlink:to="us-gaap_LossContingenciesLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LossContingenciesLineItems_lbl" xml:lang="en-US">Loss Contingencies [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermPurchaseCommitmentAmount" xlink:to="us-gaap_LongTermPurchaseCommitmentAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount_lbl" xml:lang="en-US">Purchase of aggregate raw material</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_LegalReserves" xlink:to="TGLS_LegalReserves_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_LegalReserves_doc" xml:lang="en-US">Legal reserves.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SoftwareAndLicensesMember" xlink:to="TGLS_SoftwareAndLicensesMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_SoftwareAndLicensesMember_doc" xml:lang="en-US">Software and Licenses [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" xlink:to="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_doc" xml:lang="en-US">Notice of Acceptances Product Designs and Intellectual Property [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContractBacklogMember" xlink:to="TGLS_ContractBacklogMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ContractBacklogMember_doc" xml:lang="en-US">Contract Backlog [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" xlink:to="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_doc" xml:lang="en-US">Finite lived intangible assets amortization expense after year three.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SupplierFinanceProgramMember" xlink:to="TGLS_SupplierFinanceProgramMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_SupplierFinanceProgramMember_doc" xml:lang="en-US">Supplier Finance Program [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherOperatingIncomeLoss" xlink:to="TGLS_OtherOperatingIncomeLoss_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_OtherOperatingIncomeLoss_doc" xml:lang="en-US">Other operating income loss.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_EquityMethodIncome" xlink:to="TGLS_EquityMethodIncome_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_EquityMethodIncome_doc" xml:lang="en-US">Equity method income.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestExpenseAndDeferredCostOfFinancing" xlink:to="TGLS_InterestExpenseAndDeferredCostOfFinancing_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_InterestExpenseAndDeferredCostOfFinancing_doc" xml:lang="en-US">Interest expense and deferred cost of financing.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseDebt" xlink:to="TGLS_FinanceLeaseDebt_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FinanceLeaseDebt_doc" xml:lang="en-US">Finance lease debt.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SeniorSecuredCreditFacility" xlink:to="TGLS_SeniorSecuredCreditFacility_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_SeniorSecuredCreditFacility_doc" xml:lang="en-US">Senior secured credit facility.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SeniorSecuredCreditFacilityMember" xlink:to="TGLS_SeniorSecuredCreditFacilityMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_SeniorSecuredCreditFacilityMember_doc" xml:lang="en-US">Senior Secured Credit Facility [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DeferredCostOfFinancing" xlink:to="TGLS_DeferredCostOfFinancing_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_DeferredCostOfFinancing_doc" xml:lang="en-US">Deferred cost of financing</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_TerminationCosts" xlink:to="TGLS_TerminationCosts_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_TerminationCosts_doc" xml:lang="en-US">Termination costs.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DeductedFromProceedsFromIssuanceOfDebt" xlink:to="TGLS_DeductedFromProceedsFromIssuanceOfDebt_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_DeductedFromProceedsFromIssuanceOfDebt_doc" xml:lang="en-US">Deducted from proceeds from issuance of debt.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" xlink:to="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_doc" xml:lang="en-US">Schedule of Interest Income Expense Net and Deferred Cost [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract" xlink:to="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract_doc" xml:lang="en-US">Cash Paid During Period For Interest And Taxes [Abstract]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_AccountPayableForBusinessAcquisition" xlink:to="TGLS_AccountPayableForBusinessAcquisition_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_AccountPayableForBusinessAcquisition_doc" xml:lang="en-US">Account payable for business acquisition.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DeferredCostsOfFinancing" xlink:to="TGLS_DeferredCostsOfFinancing_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_DeferredCostsOfFinancing_doc" xml:lang="en-US">Deferred costs of financing</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DerivativeFinancialInstrumentGain" xlink:to="TGLS_DerivativeFinancialInstrumentGain_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_DerivativeFinancialInstrumentGain_doc" xml:lang="en-US">Derivative financial instrument gain</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing" xlink:to="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing_doc" xml:lang="en-US">Interest income expense net and deferred cost of financing</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_LegalReservesMember" xlink:to="TGLS_LegalReservesMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_LegalReservesMember_doc" xml:lang="en-US">Legal Reserves [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" xlink:to="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_doc" xml:lang="en-US">Finance lease right of use asset included property plant and equipment and lease liabilities.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseShortTermDebt" xlink:to="TGLS_FinanceLeaseShortTermDebt_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FinanceLeaseShortTermDebt_doc" xml:lang="en-US">Finance lease short term debt.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseLongTermDebt" xlink:to="TGLS_FinanceLeaseLongTermDebt_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FinanceLeaseLongTermDebt_doc" xml:lang="en-US">Finance lease long term debt.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" xlink:to="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale_doc" xml:lang="en-US">Change in fair value of investments available for sale.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" xlink:to="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_doc" xml:lang="en-US">Other comprehensive income loss change in fair value of investments available for sale and derivative contracts.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" xlink:to="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_doc" xml:lang="en-US">Finance lease principal payments classified as operating cash flows.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" xlink:to="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_doc" xml:lang="en-US">Finance lease principal payments classified as financing cash flows.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" xlink:to="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_doc" xml:lang="en-US">Non cash additions to right of use assets in exchange for lease liabilities.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour_doc" xml:lang="en-US">Finance lease liability payments due after year four.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" xlink:to="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_doc" xml:lang="en-US">Schedule Of Fair Value Of Foreign Currency Hedges [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestRateSwapContractsMember" xlink:to="TGLS_InterestRateSwapContractsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_InterestRateSwapContractsMember_doc" xml:lang="en-US">Interest Rate Swap Contracts [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_StatementOfBalanceSheetLocationAxis" xlink:to="TGLS_StatementOfBalanceSheetLocationAxis_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_StatementOfBalanceSheetLocationAxis_doc" xml:lang="en-US">Statement of balance sheet location axis.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherCurrentAssetMember" xlink:to="TGLS_OtherCurrentAssetMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_OtherCurrentAssetMember_doc" xml:lang="en-US">Other Current Asset [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ForeignCurrencyNonDeliveryForwardsMember" xlink:to="TGLS_ForeignCurrencyNonDeliveryForwardsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ForeignCurrencyNonDeliveryForwardsMember_doc" xml:lang="en-US">Foreign Currency Non Delivery Forwards [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DerivativeGainLossesOnDerivativeNet" xlink:to="TGLS_DerivativeGainLossesOnDerivativeNet_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_DerivativeGainLossesOnDerivativeNet_doc" xml:lang="en-US">Derivative gain losses on derivative net.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" xlink:to="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_doc" xml:lang="en-US">Interest Rate Swap Contracts and Foreign Currency Non-delivery Forwards [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" xlink:to="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_doc" xml:lang="en-US">Recovery Of Previously Paid Import Tariffs [Policy Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_RecoveryOfPreviouslyPaidImportTariffs" xlink:to="TGLS_RecoveryOfPreviouslyPaidImportTariffs_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_RecoveryOfPreviouslyPaidImportTariffs_doc" xml:lang="en-US">Recovery of previously paid import tariffs.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember" xlink:to="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember_doc" xml:lang="en-US">Interest Expense Net of Deferred Cost of Financing [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContiglassAssetAcquisitionLLCMember" xlink:to="TGLS_ContiglassAssetAcquisitionLLCMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ContiglassAssetAcquisitionLLCMember_doc" xml:lang="en-US">Contiglass Asset Acquisition LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_WorkingCapitalAdjustment" xlink:to="TGLS_WorkingCapitalAdjustment_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_WorkingCapitalAdjustment_doc" xml:lang="en-US">Working capital adjustment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed contract backlog.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed notice of acceptance and permits.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed current liabilities accrued expense.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed service revenue deposit.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_doc" xml:lang="en-US">Amount of lease liabilities assumed in business combination and recognized at acquisition date, classified as current.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" xlink:to="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities assumed billings in excess of cost and profit.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InventoryPackingMaterialGross" xlink:to="TGLS_InventoryPackingMaterialGross_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_InventoryPackingMaterialGross_doc" xml:lang="en-US">Reflects Gross amount, as of the balance sheet date of packing materials.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" xlink:to="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_doc" xml:lang="en-US">Schedule Of Revenues Distribution By End Market [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" xlink:to="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_doc" xml:lang="en-US">Schedule of changes in allowance for doubtful accounts receivable [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_NetContractLiabilitiesAssets" xlink:to="TGLS_NetContractLiabilitiesAssets_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_NetContractLiabilitiesAssets_doc" xml:lang="en-US">Net contract liabilities assets.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_BillingsInExcessOfCosts" xlink:to="TGLS_BillingsInExcessOfCosts_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_BillingsInExcessOfCosts_doc" xml:lang="en-US">Liability attributable to (i) billings in excess of costs under the percentage of completion contract accounting method representing the difference between contractually invoiced amounts (billings) and revenue recognized based, for example, on costs incurred to estimated total costs at period end or (ii) contractually invoiced amounts (billings) in excess of costs incurred and accumulated under the completed contract accounting method.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_RealizedGainOnDerivativeInstruments" xlink:to="TGLS_RealizedGainOnDerivativeInstruments_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_RealizedGainOnDerivativeInstruments_doc" xml:lang="en-US">Realized gain on derivative instruments.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock" xlink:to="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock_doc" xml:lang="en-US">Schedule Of Sale To Related Party [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_AlutraficLedSASMember" xlink:to="TGLS_AlutraficLedSASMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_AlutraficLedSASMember_doc" xml:lang="en-US">Alutrafic Led SAS [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CashContributionsForSocialCauses" xlink:to="TGLS_CashContributionsForSocialCauses_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_CashContributionsForSocialCauses_doc" xml:lang="en-US">Cash contributions for social causes</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FundacionTecnoglassMember" xlink:to="TGLS_FundacionTecnoglassMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FundacionTecnoglassMember_doc" xml:lang="en-US">Fundacion Tecnoglass [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_PrismaGlassLLCMember" xlink:to="TGLS_PrismaGlassLLCMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_PrismaGlassLLCMember_doc" xml:lang="en-US">Prisma Glass LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_PurchasePriceOfFuel" xlink:to="TGLS_PurchasePriceOfFuel_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_PurchasePriceOfFuel_doc" xml:lang="en-US">Purchase price of fuel.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CEOAndCOOMember" xlink:to="TGLS_CEOAndCOOMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_CEOAndCOOMember_doc" xml:lang="en-US">CEO and COO [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SantaMariaDelMarSASMember" xlink:to="TGLS_SantaMariaDelMarSASMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_SantaMariaDelMarSASMember_doc" xml:lang="en-US">Santa Maria Del Mar SAS [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_StormArmourSolutionsLLCMember" xlink:to="TGLS_StormArmourSolutionsLLCMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_StormArmourSolutionsLLCMember_doc" xml:lang="en-US">Storm Armour Solutions LLC [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_StudioAvantiSASMember" xlink:to="TGLS_StudioAvantiSASMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_StudioAvantiSASMember_doc" xml:lang="en-US">Studio Avanti SAS [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_VidrioAndinoMember" xlink:to="TGLS_VidrioAndinoMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_VidrioAndinoMember_doc" xml:lang="en-US">Vidrio Andino [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_PremiumClosingStockPercentage" xlink:to="TGLS_PremiumClosingStockPercentage_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_PremiumClosingStockPercentage_doc" xml:lang="en-US">Premium closing stock, percent.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ExpectedOwnershipPercentage" xlink:to="TGLS_ExpectedOwnershipPercentage_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ExpectedOwnershipPercentage_doc" xml:lang="en-US">Expected ownership percentage.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FutureAdditionalContributionAmount" xlink:to="TGLS_FutureAdditionalContributionAmount_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FutureAdditionalContributionAmount_doc" xml:lang="en-US">Future additional contribution amount.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ZofracostaSAMember" xlink:to="TGLS_ZofracostaSAMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ZofracostaSAMember_doc" xml:lang="en-US">Zofracosta SA [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_QuarterlyRateMember" xlink:to="TGLS_QuarterlyRateMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_QuarterlyRateMember_doc" xml:lang="en-US">Quarterly Rate [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_AnnualBasisMember" xlink:to="TGLS_AnnualBasisMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_AnnualBasisMember_doc" xml:lang="en-US">Annual Basis [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_EffectOfDilutiveSecuritiesAndStockDividend" xlink:to="TGLS_EffectOfDilutiveSecuritiesAndStockDividend_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_EffectOfDilutiveSecuritiesAndStockDividend_doc" xml:lang="en-US">Effect of dilutive securities and stock dividend.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FebruaryTwentyEightThousandThirtyThreeMember" xlink:to="TGLS_FebruaryTwentyEightThousandThirtyThreeMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FebruaryTwentyEightThousandThirtyThreeMember_doc" xml:lang="en-US">February 28, 2023 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ThroughTwoThousandTwentyEightMember" xlink:to="TGLS_ThroughTwoThousandTwentyEightMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ThroughTwoThousandTwentyEightMember_doc" xml:lang="en-US">Through 2028 [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ExternalCustomersMember" xlink:to="TGLS_ExternalCustomersMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ExternalCustomersMember_doc" xml:lang="en-US">External Customers [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContractAssetsMember" xlink:to="TGLS_ContractAssetsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ContractAssetsMember_doc" xml:lang="en-US">Contract Assets [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ContractLiabilitiesMember" xlink:to="TGLS_ContractLiabilitiesMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ContractLiabilitiesMember_doc" xml:lang="en-US">Contract Liabilities [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_FixedPriceContractsMember" xlink:to="TGLS_FixedPriceContractsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_FixedPriceContractsMember_doc" xml:lang="en-US">Fixed Price Contracts [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ProductSalesMember" xlink:to="TGLS_ProductSalesMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ProductSalesMember_doc" xml:lang="en-US">Product Sales [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherMember" xlink:to="TGLS_OtherMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_OtherMember_doc" xml:lang="en-US">Other [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_ResidentialMember" xlink:to="TGLS_ResidentialMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_ResidentialMember_doc" xml:lang="en-US">Residential [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_CommercialMember" xlink:to="TGLS_CommercialMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_CommercialMember_doc" xml:lang="en-US">Commercial [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_SalesToOtherRelatedPartiesMember" xlink:to="TGLS_SalesToOtherRelatedPartiesMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="TGLS_SalesToOtherRelatedPartiesMember_doc" xml:lang="en-US">Sales to Other Related Parties [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrent_2_lbl" xml:lang="en-US">Assets, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsNoncurrent" xlink:to="us-gaap_AssetsNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsNoncurrent_2_lbl" xml:lang="en-US">Assets, Noncurrent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Assets_2_lbl" xml:lang="en-US">Assets</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrent_2_lbl" xml:lang="en-US">Liabilities, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet_2_lbl" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesNoncurrent_2_lbl" xml:lang="en-US">Liabilities, Noncurrent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Liabilities_2_lbl" xml:lang="en-US">Liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xml:lang="en-US">Equity, Including Portion Attributable to Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_2_lbl" xml:lang="en-US">Liabilities and Equity</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfGoodsAndServicesSold_2_lbl" xml:lang="en-US">Cost of Product and Service Sold</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GrossProfit_2_lbl" xml:lang="en-US">Gross Profit</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingExpense" xlink:to="us-gaap_SellingExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingExpense_2_lbl" xml:lang="en-US">Selling Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralAndAdministrativeExpense_2_lbl" xml:lang="en-US">General and Administrative Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpenses_2_lbl" xml:lang="en-US">Operating Expenses</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingIncomeLoss_2_lbl" xml:lang="en-US">Operating Income (Loss)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_InterestExpenseAndDeferredCostOfFinancing" xlink:to="TGLS_InterestExpenseAndDeferredCostOfFinancing_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_InterestExpenseAndDeferredCostOfFinancing_3_lbl" xml:lang="en-US">InterestExpenseAndDeferredCostOfFinancing</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_2_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExpenseBenefit_3_lbl" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_2_lbl" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_2_lbl" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_2_lbl" xml:lang="en-US">Deferred Income Taxes and Tax Credits</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_2_lbl" xml:lang="en-US">Gain (Loss) on Disposition of Assets</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_2_lbl" xml:lang="en-US">Unrealized Gain (Loss), Foreign Currency Transaction, before Tax</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncashIncomeExpense" xlink:to="us-gaap_OtherNoncashIncomeExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherNoncashIncomeExpense_2_lbl" xml:lang="en-US">Other Noncash Income (Expense)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_2_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInInventories_2_lbl" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_2_lbl" xml:lang="en-US">Increase (Decrease) in Prepaid Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_2_lbl" xml:lang="en-US">Increase (Decrease) in Other Operating Assets</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_2_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Payable and Accrued Liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:to="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities_2_lbl" xml:lang="en-US">Increase (Decrease) in Commodity Contract Assets and Liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_2_lbl" xml:lang="en-US">Cash Provided by (Used in) Operating Activity, Including Discontinued Operation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2_lbl" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireInvestments" xlink:to="us-gaap_PaymentsToAcquireInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireInvestments_2_lbl" xml:lang="en-US">Payments to Acquire Investments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2_lbl" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_2_lbl" xml:lang="en-US">Cash Provided by (Used in) Investing Activity, Including Discontinued Operation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividends" xlink:to="us-gaap_PaymentsOfDividends_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsOfDividends_2_lbl" xml:lang="en-US">Payments of Dividends</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfEquity" xlink:to="us-gaap_PaymentsForRepurchaseOfEquity_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsForRepurchaseOfEquity_2_lbl" xml:lang="en-US">Payments for Repurchase of Equity</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_2_lbl" xml:lang="en-US">Cash Provided by (Used in) Financing Activity, Including Discontinued Operation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_2_lbl" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Period Increase (Decrease), Including Exchange Rate Effect and Discontinued Operation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3_lbl" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Including Discontinued Operation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquity_3_lbl" xml:lang="en-US">Equity, Attributable to Parent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesOutstanding_3_lbl" xml:lang="en-US">Shares, Outstanding</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockCommonShares_3_lbl" xml:lang="en-US">Treasury Stock, Common, Shares</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCommonStock" xlink:to="us-gaap_DividendsCommonStock_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsCommonStock_2_lbl" xml:lang="en-US">Dividends, Common Stock</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="us-gaap_TreasuryStockValueAcquiredCostMethod_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockValueAcquiredCostMethod_3_lbl" xml:lang="en-US">Treasury Stock, Value, Acquired, Cost Method</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" xlink:to="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts_3_lbl" xml:lang="en-US">OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProfitLoss_2_lbl" xml:lang="en-US">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_2_lbl" xml:lang="en-US">Stock Repurchased During Period, Value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodShares" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_2_lbl" xml:lang="en-US">Stock Repurchased During Period, Shares</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_ForgoneRecoveryIndName" xlink:to="ecd_ForgoneRecoveryIndName_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_ForgoneRecoveryIndName_2_lbl" xml:lang="en-US">Forgone Recovery, Individual Name</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_OutstandingRecoveryIndName" xlink:to="ecd_OutstandingRecoveryIndName_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_OutstandingRecoveryIndName_2_lbl" xml:lang="en-US">Outstanding Recovery, Individual Name</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_AwardsCloseToMnpiDiscIndName" xlink:to="ecd_AwardsCloseToMnpiDiscIndName_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_AwardsCloseToMnpiDiscIndName_2_lbl" xml:lang="en-US">Awards Close in Time to MNPI Disclosures, Individual Name</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ecd_TrdArrIndName" xlink:to="ecd_TrdArrIndName_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="ecd_TrdArrIndName_2_lbl" xml:lang="en-US">Trading Arrangement, Individual Name</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrual_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyAccrual_3_lbl" xml:lang="en-US">Standard Product Warranty Accrual</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualPayments" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments_2_lbl" xml:lang="en-US">Standard Product Warranty Accrual, Decrease for Payments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_2_lbl" xml:lang="en-US">Business Combination, Recognized Liability Assumed, Accounts Payable, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_2_lbl" xml:lang="en-US">Business Combination, Recognized Asset Acquired to Liability Assumed, Excess (Less)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_2_lbl" xml:lang="en-US">Business Combination, Recognized Asset Acquired to Liability Assumed, Excess (Less), and Goodwill</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryGross" xlink:to="us-gaap_InventoryGross_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryGross_2_lbl" xml:lang="en-US">Inventory, Gross</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryValuationReserves" xlink:to="us-gaap_InventoryValuationReserves_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryValuationReserves_2_lbl" xml:lang="en-US">Inventory Valuation Reserves</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_4_lbl" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_2_lbl" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Writeoff</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_NetContractLiabilitiesAssets" xlink:to="TGLS_NetContractLiabilitiesAssets_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_NetContractLiabilitiesAssets_3_lbl" xml:lang="en-US">NetContractLiabilitiesAssets</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetGrossCurrent" xlink:to="us-gaap_ContractWithCustomerAssetGrossCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetGrossCurrent_2_lbl" xml:lang="en-US">Contract with Customer, Asset, before Allowance for Credit Loss, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiability_2_lbl" xml:lang="en-US">Contract with Customer, Liability</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_2_lbl" xml:lang="en-US">Intangible Asset, Finite-Lived, Accumulated Amortization</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredCostsCurrent" xlink:to="us-gaap_DeferredCostsCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredCostsCurrent_2_lbl" xml:lang="en-US">Deferred Costs, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_DebtInstrumentCarryingAmount_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentCarryingAmount_2_lbl" xml:lang="en-US">Long-Term Debt, Gross</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TGLS_DeferredCostsOfFinancing" xlink:to="TGLS_DeferredCostsOfFinancing_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="TGLS_DeferredCostsOfFinancing_3_lbl" xml:lang="en-US">Deferred costs of financing</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year One</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year Two</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year Three</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_2_lbl" xml:lang="en-US">Long-Term Debt, Maturity, Year Four</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebt_2_lbl" xml:lang="en-US">Long-Term Debt</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_2_lbl" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year One</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_2_lbl" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year Two</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_2_lbl" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year Three</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_2_lbl" xml:lang="en-US">Finance Lease, Liability, to be Paid, Year Four</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_2_lbl" xml:lang="en-US">Finance Lease, Liability, to be Paid</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiability_2_lbl" xml:lang="en-US">Finance Lease, Liability</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LegalFees" xlink:to="us-gaap_LegalFees_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LegalFees_2_lbl" xml:lang="en-US">Legal Fees</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset_2_lbl" xml:lang="en-US">Finance Lease, Right-of-Use Asset, after Accumulated Amortization</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseInterestExpense" xlink:to="us-gaap_FinanceLeaseInterestExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseInterestExpense_2_lbl" xml:lang="en-US">Finance Lease, Interest Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Current Income Tax Expense (Benefit)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Investments" xlink:to="us-gaap_Investments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Investments_2_lbl" xml:lang="en-US">Investments [Default Label]</link:label>
    </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>tgls-20260630_pre.xml
<DESCRIPTION>XBRL PRESENTATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.5a -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Cover" roleURI="http://tecnoglass.com/role/Cover" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BalanceSheets" roleURI="http://tecnoglass.com/role/BalanceSheets" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BalanceSheetsParenthetical" roleURI="http://tecnoglass.com/role/BalanceSheetsParenthetical" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfOperationsAndOtherComprehensiveIncome" roleURI="http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfCashFlows" roleURI="http://tecnoglass.com/role/StatementsOfCashFlows" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfShareholdersEquity" roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquity" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#StatementsOfShareholdersEquityParenthetical" roleURI="http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#General" roleURI="http://tecnoglass.com/role/General" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Acquisitions" roleURI="http://tecnoglass.com/role/Acquisitions" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#InventoriesNet" roleURI="http://tecnoglass.com/role/InventoriesNet" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwill" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwill" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#SupplierFinanceProgram" roleURI="http://tecnoglass.com/role/SupplierFinanceProgram" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#Debt" roleURI="http://tecnoglass.com/role/Debt" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurements" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxes" roleURI="http://tecnoglass.com/role/IncomeTaxes" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedParties" roleURI="http://tecnoglass.com/role/RelatedParties" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquity" roleURI="http://tecnoglass.com/role/ShareholdersEquity" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#CommitmentsAndContingencies" roleURI="http://tecnoglass.com/role/CommitmentsAndContingencies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#AcquisitionsTables" roleURI="http://tecnoglass.com/role/AcquisitionsTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#InventoriesNetTables" roleURI="http://tecnoglass.com/role/InventoriesNetTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwillTables" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DebtTables" roleURI="http://tecnoglass.com/role/DebtTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxesTables" roleURI="http://tecnoglass.com/role/IncomeTaxesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedPartiesTables" roleURI="http://tecnoglass.com/role/RelatedPartiesTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquityTables" roleURI="http://tecnoglass.com/role/ShareholdersEquityTables" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfProductWarrantyLiabilityDetails" roleURI="http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" roleURI="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" roleURI="http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#AcquisitionsDetailsNarrative" roleURI="http://tecnoglass.com/role/AcquisitionsDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfInventoriesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfInventoriesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfDisaggregationByRevenueDetails" roleURI="http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfGeographicInformationDetails" roleURI="http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfRevenuesDistributionByEndMarketDetails" roleURI="http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfTradeAccountsReceivableDetails" roleURI="http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" roleURI="http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfContractAssetsAndLiabilitiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" roleURI="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFinite-livedIntangibleAssetsNetDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IntangibleAssetsAndGoodwillDetailsNarrative" roleURI="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#SupplierFinanceProgramDetailsNarrative" roleURI="http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" roleURI="http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfMaturitiesOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFutureMinimumLeasePaymentsDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DebtDetailsNarrative" roleURI="http://tecnoglass.com/role/DebtDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFairValueOfForeignCurrencyHedgesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" roleURI="http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" roleURI="http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" roleURI="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfComponentsOfIncomeTaxExpenseDetails" roleURI="http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#IncomeTaxesDetailsNarrative" roleURI="http://tecnoglass.com/role/IncomeTaxesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfRelatedPartiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfSaleToRelatedPartiesDetails" roleURI="http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#RelatedPartiesDetailsNarrative" roleURI="http://tecnoglass.com/role/RelatedPartiesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ScheduleOfEarningsPerShareBasicAndDilutedDetails" roleURI="http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#ShareholdersEquityDetailsNarrative" roleURI="http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="tgls-20260630.xsd#CommitmentsAndContingenciesDetailsNarrative" roleURI="http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpDisclosure" roleURI="http://xbrl.sec.gov/ecd/role/PvpDisclosure" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpDisclosureWithAdditionalMeasures" roleURI="http://xbrl.sec.gov/ecd/role/PvpDisclosureWithAdditionalMeasures" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpTable" roleURI="http://xbrl.sec.gov/ecd/role/PvpTable" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpAdjustmentsToCompensation" roleURI="http://xbrl.sec.gov/ecd/role/PvpAdjustmentsToCompensation" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#TabularListsByExecutiveCategory" roleURI="http://xbrl.sec.gov/ecd/role/TabularListsByExecutiveCategory" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#TabularListMeasures" roleURI="http://xbrl.sec.gov/ecd/role/TabularListMeasures" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpMeasures" roleURI="http://xbrl.sec.gov/ecd/role/PvpMeasures" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#PvpPensionBenefitsAdjustments" roleURI="http://xbrl.sec.gov/ecd/role/PvpPensionBenefitsAdjustments" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ErrCompDisclosure" roleURI="http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ForgoneRecoveries" roleURI="http://xbrl.sec.gov/ecd/role/ForgoneRecoveries" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#OutstandingRecoveries" roleURI="http://xbrl.sec.gov/ecd/role/OutstandingRecoveries" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#AwardTimingDisclosure" roleURI="http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#AwardsCloseToMnpiDisc" roleURI="http://xbrl.sec.gov/ecd/role/AwardsCloseToMnpiDisc" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#InsiderTradingArrangements" roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#InsiderTradingArrangemenstByInd" roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangementsByInd" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#InsiderTradingPoliciesProc" roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" />
    <link:roleRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#Defaults" roleURI="http://xbrl.sec.gov/ecd/role/Defaults" />
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Cover" xlink:title="00000001 - Document - Cover">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentType" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AmendmentDescription" xlink:label="loc_deiAmendmentDescription" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentRegistrationStatement" xlink:label="loc_deiDocumentRegistrationStatement" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentRegistrationStatement" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentAnnualReport" xlink:label="loc_deiDocumentAnnualReport" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAnnualReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentQuarterlyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentTransitionReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentShellCompanyReport" xlink:label="loc_deiDocumentShellCompanyReport" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentShellCompanyEventDate" xlink:label="loc_deiDocumentShellCompanyEventDate" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyEventDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentPeriodStartDate" xlink:label="loc_deiDocumentPeriodStartDate" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodStartDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_deiDocumentFiscalPeriodFocus" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalPeriodFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_deiDocumentFiscalYearFocus" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalYearFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCurrentFiscalYearEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFileNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityRegistrantName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCentralIndexKey" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityPrimarySicNumber" xlink:label="loc_deiEntityPrimarySicNumber" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPrimarySicNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityTaxIdentificationNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityIncorporationStateCountryCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressAddressLine3" xlink:label="loc_deiEntityAddressAddressLine3" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine3" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCityOrTown" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressStateOrProvince" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressCountry" xlink:label="loc_deiEntityAddressCountry" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCountry" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressPostalZipCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CountryRegion" xlink:label="loc_deiCountryRegion" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCountryRegion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCityAreaCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiLocalPhoneNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_Extension" xlink:label="loc_deiExtension" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiExtension" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiWrittenCommunications" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSolicitingMaterial" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementIssuerTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12bTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_NoTradingSymbolFlag" xlink:label="loc_deiNoTradingSymbolFlag" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiNoTradingSymbolFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiTradingSymbol" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityExchangeName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_Security12gTitle" xlink:label="loc_deiSecurity12gTitle" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12gTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_SecurityReportingObligation" xlink:label="loc_deiSecurityReportingObligation" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityReportingObligation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AnnualInformationForm" xlink:label="loc_deiAnnualInformationForm" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAnnualInformationForm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="loc_deiAuditedAnnualFinancialStatements" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditedAnnualFinancialStatements" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_deiEntityWellKnownSeasonedIssuer" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityWellKnownSeasonedIssuer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_deiEntityVoluntaryFilers" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityVoluntaryFilers" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCurrentReportingStatus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityInteractiveDataCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFilerCategory" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness" />
      <link:presentationArc order="480" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntitySmallBusiness" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
      <link:presentationArc order="490" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityEmergingGrowthCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityExTransitionPeriod" xlink:label="loc_deiEntityExTransitionPeriod" />
      <link:presentationArc order="500" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityExTransitionPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentAccountingStandard" xlink:label="loc_deiDocumentAccountingStandard" />
      <link:presentationArc order="510" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAccountingStandard" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_OtherReportingStandardItemNumber" xlink:label="loc_deiOtherReportingStandardItemNumber" />
      <link:presentationArc order="520" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiOtherReportingStandardItemNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany" />
      <link:presentationArc order="530" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityShellCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityPublicFloat" xlink:label="loc_deiEntityPublicFloat" />
      <link:presentationArc order="540" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPublicFloat" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="loc_deiEntityBankruptcyProceedingsReportingCurrent" />
      <link:presentationArc order="550" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityBankruptcyProceedingsReportingCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding" />
      <link:presentationArc order="560" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCommonStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_deiDocumentsIncorporatedByReferenceTextBlock" />
      <link:presentationArc order="570" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityListingParValuePerShare" xlink:label="loc_deiEntityListingParValuePerShare" />
      <link:presentationArc order="580" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityListingParValuePerShare" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BalanceSheets" xlink:title="00000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NonrelatedPartyMember" xlink:label="loc_us-gaapNonrelatedPartyMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapNonrelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaapAssetsAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapAssetsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaapAssetsCurrentAbstract" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapAssetsCurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShortTermInvestments" xlink:label="loc_us-gaapShortTermInvestments" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapShortTermInvestments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherReceivablesNetCurrent" xlink:label="loc_us-gaapOtherReceivablesNetCurrent" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapOtherReceivablesNetCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetCurrent" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapContractWithCustomerAssetNetCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaapOtherAssetsCurrent" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapOtherAssetsCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapAssetsCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsNoncurrentAbstract" xlink:label="loc_us-gaapAssetsNoncurrentAbstract" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapAssetsNoncurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaapAccountsReceivableNetNoncurrent" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapAccountsReceivableNetNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaapDeferredIncomeTaxAssetsNet" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxAssetsNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetNoncurrent" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapContractWithCustomerAssetNetNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermInvestments" xlink:label="loc_us-gaapLongTermInvestments" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapLongTermInvestments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaapOtherAssetsNoncurrent" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapOtherAssetsNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AssetsNoncurrent" xlink:label="loc_us-gaapAssetsNoncurrent" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsNoncurrentAbstract" xlink:to="loc_us-gaapAssetsNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaapLiabilitiesCurrentAbstract" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilitiesCurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtCurrent" xlink:label="loc_us-gaapDebtCurrent" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapDebtCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="loc_us-gaapOtherLiabilitiesCurrent" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapOtherLiabilitiesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DividendsPayableCurrent" xlink:label="loc_us-gaapDividendsPayableCurrent" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapDividendsPayableCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapLiabilitiesCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="loc_us-gaapLiabilitiesNoncurrentAbstract" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapLongTermDebtNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaapLiabilitiesNoncurrent" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapLiabilitiesNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaapStockholdersEquityAbstract" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapStockholdersEquityAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaapPreferredStockValue" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapPreferredStockValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaapTreasuryStockValue" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapTreasuryStockValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_LegalReserves" xlink:label="loc_TGLSLegalReserves" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_TGLSLegalReserves" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapStockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaapPreferredStockParOrStatedValuePerShare" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockParOrStatedValuePerShare" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaapPreferredStockSharesAuthorized" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockSharesAuthorized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaapPreferredStockSharesIssued" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockSharesIssued" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaapPreferredStockSharesOutstanding" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaapCommonStockParOrStatedValuePerShare" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockParOrStatedValuePerShare" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaapCommonStockSharesAuthorized" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesAuthorized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaapCommonStockSharesIssued" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesIssued" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaapCommonStockSharesOutstanding" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesOutstanding" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome" xlink:title="00000004 - Statement - Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaapIncomeStatementAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ExternalCustomersMember" xlink:label="loc_TGLSExternalCustomersMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_TGLSExternalCustomersMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaapCostOfGoodsAndServicesSold" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapCostOfGoodsAndServicesSold" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapGrossProfit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaapOperatingExpensesAbstract" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapOperatingExpensesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SellingExpense" xlink:label="loc_us-gaapSellingExpense" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapSellingExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaapGeneralAndAdministrativeExpense" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapGeneralAndAdministrativeExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapOperatingExpenses" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherOperatingIncomeLoss" xlink:label="loc_TGLSOtherOperatingIncomeLoss" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_TGLSOtherOperatingIncomeLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapOperatingIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NonoperatingGainsLosses" xlink:label="loc_us-gaapNonoperatingGainsLosses" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapNonoperatingGainsLosses" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_EquityMethodIncome" xlink:label="loc_TGLSEquityMethodIncome" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_TGLSEquityMethodIncome" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestExpenseAndDeferredCostOfFinancing" xlink:label="loc_TGLSInterestExpenseAndDeferredCostOfFinancing" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_TGLSInterestExpenseAndDeferredCostOfFinancing" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapEarningsPerShareBasic" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapEarningsPerShareDiluted" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDefinedBenefitPlanDisclosureLineItems" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfCashFlows" xlink:title="00000005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaapStatementOfCashFlowsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapDepreciationAndAmortization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="loc_us-gaapDeferredIncomeTaxesAndTaxCredits" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxesAndTaxCredits" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaapIncomeLossFromEquityMethodInvestments" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapIncomeLossFromEquityMethodInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeferredCostOfFinancing" xlink:label="loc_TGLSDeferredCostOfFinancing" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_TGLSDeferredCostOfFinancing" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RealizedGainOnDerivativeInstruments" xlink:label="loc_TGLSRealizedGainOnDerivativeInstruments" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_TGLSRealizedGainOnDerivativeInstruments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossUnrealized" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossUnrealized" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaapOtherNoncashIncomeExpense" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapOtherNoncashIncomeExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInInventories" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInEmployeeRelatedLiabilities" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInOtherOperatingLiabilities" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInOtherOperatingLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInCommodityContractAssetsAndLiabilities" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInCommodityContractAssetsAndLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncreaseDecreaseInDueToRelatedParties" xlink:label="loc_us-gaapIncreaseDecreaseInDueToRelatedParties" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInDueToRelatedParties" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="loc_us-gaapProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireInvestments" xlink:label="loc_us-gaapPaymentsToAcquireInvestments" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquireInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="loc_us-gaapProceedsFromSaleOfPropertyPlantAndEquipment" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsOfDividends" xlink:label="loc_us-gaapPaymentsOfDividends" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsOfDividends" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsForRepurchaseOfEquity" xlink:label="loc_us-gaapPaymentsForRepurchaseOfEquity" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsForRepurchaseOfEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProceedsFromIssuanceOfDebt" xlink:label="loc_us-gaapProceedsFromIssuanceOfDebt" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromIssuanceOfDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RepaymentsOfDebt" xlink:label="loc_us-gaapRepaymentsOfDebt" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapRepaymentsOfDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaapSupplementalCashFlowInformationAbstract" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract" xlink:label="loc_TGLSCashPaidDuringPeriodForInterestAndTaxesAbstract" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:to="loc_TGLSCashPaidDuringPeriodForInterestAndTaxesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaapInterestPaidNet" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSCashPaidDuringPeriodForInterestAndTaxesAbstract" xlink:to="loc_us-gaapInterestPaidNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaapIncomeTaxesPaidNet" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSCashPaidDuringPeriodForInterestAndTaxesAbstract" xlink:to="loc_us-gaapIncomeTaxesPaidNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueOfAssetsAcquired" xlink:label="loc_us-gaapFairValueOfAssetsAcquired" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:to="loc_us-gaapFairValueOfAssetsAcquired" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AccountPayableForBusinessAcquisition" xlink:label="loc_TGLSAccountPayableForBusinessAcquisition" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:to="loc_TGLSAccountPayableForBusinessAcquisition" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfShareholdersEquity" xlink:title="00000006 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaapStatementOfStockholdersEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfStockholdersEquityAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" order="70" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapCommonStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="loc_us-gaapTreasuryStockCommonMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapTreasuryStockCommonMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaapAdditionalPaidInCapitalMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapAdditionalPaidInCapitalMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_LegalReservesMember" xlink:label="loc_TGLSLegalReservesMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_TGLSLegalReservesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapRetainedEarningsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="loc_us-gaapTreasuryStockCommonShares" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapTreasuryStockCommonShares" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DividendsCommonStock" xlink:label="loc_us-gaapDividendsCommonStock" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDividendsCommonStock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaapTreasuryStockValueAcquiredCostMethod" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapTreasuryStockValueAcquiredCostMethod" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaapTreasuryStockSharesAcquired" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapTreasuryStockSharesAcquired" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" xlink:label="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProfitLoss" xlink:label="loc_us-gaapProfitLoss" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProfitLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaapStockRepurchasedDuringPeriodValue" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockRepurchasedDuringPeriodValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="loc_us-gaapStockRepurchasedDuringPeriodShares" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockRepurchasedDuringPeriodShares" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" xlink:label="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSOtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity_2" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquity_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding_2" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="loc_us-gaapTreasuryStockCommonShares_2" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapTreasuryStockCommonShares_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical" xlink:title="00000007 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited) (Parenthetical)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaapStatementOfStockholdersEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaapSharePrice" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfStockholdersEquityAbstract" xlink:to="loc_us-gaapSharePrice" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/PvpDisclosure" xlink:title="995410 - Disclosure - Pay vs Performance Disclosure">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PayVsPerformanceDisclosureLineItems" xlink:label="loc_ecdPayVsPerformanceDisclosureLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PvpTable" xlink:label="loc_ecdPvpTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPayVsPerformanceDisclosureLineItems" xlink:to="loc_ecdPvpTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ExecutiveCategoryAxis" xlink:label="loc_ecdExecutiveCategoryAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTable" xlink:to="loc_ecdExecutiveCategoryAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AllExecutiveCategoriesMember" xlink:label="loc_ecdAllExecutiveCategoriesMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdExecutiveCategoryAxis" xlink:to="loc_ecdAllExecutiveCategoriesMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_IndividualAxis" xlink:label="loc_ecdIndividualAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTable" xlink:to="loc_ecdIndividualAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AllIndividualsMember" xlink:label="loc_ecdAllIndividualsMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdIndividualAxis" xlink:to="loc_ecdAllIndividualsMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToCompAxis" xlink:label="loc_ecdAdjToCompAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTable" xlink:to="loc_ecdAdjToCompAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AllAdjToCompMember" xlink:label="loc_ecdAllAdjToCompMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAdjToCompAxis" xlink:to="loc_ecdAllAdjToCompMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MeasureAxis" xlink:label="loc_ecdMeasureAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTable" xlink:to="loc_ecdMeasureAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PvpTableTextBlock" xlink:label="loc_ecdPvpTableTextBlock" />
      <link:presentationArc order="2000" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPayVsPerformanceDisclosureLineItems" xlink:to="loc_ecdPvpTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CoSelectedMeasureName" xlink:label="loc_ecdCoSelectedMeasureName" />
      <link:presentationArc order="2010" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTableTextBlock" xlink:to="loc_ecdCoSelectedMeasureName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NamedExecutiveOfficersFnTextBlock" xlink:label="loc_ecdNamedExecutiveOfficersFnTextBlock" />
      <link:presentationArc order="2020" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdCoSelectedMeasureName" xlink:to="loc_ecdNamedExecutiveOfficersFnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeerGroupIssuersFnTextBlock" xlink:label="loc_ecdPeerGroupIssuersFnTextBlock" />
      <link:presentationArc order="2030" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdCoSelectedMeasureName" xlink:to="loc_ecdPeerGroupIssuersFnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ChangedPeerGroupFnTextBlock" xlink:label="loc_ecdChangedPeerGroupFnTextBlock" />
      <link:presentationArc order="2040" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdCoSelectedMeasureName" xlink:to="loc_ecdChangedPeerGroupFnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeoTotalCompAmt" xlink:label="loc_ecdPeoTotalCompAmt" />
      <link:presentationArc order="2050" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdCoSelectedMeasureName" xlink:to="loc_ecdPeoTotalCompAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeoActuallyPaidCompAmt" xlink:label="loc_ecdPeoActuallyPaidCompAmt" />
      <link:presentationArc order="2060" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdCoSelectedMeasureName" xlink:to="loc_ecdPeoActuallyPaidCompAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToPeoCompFnTextBlock" xlink:label="loc_ecdAdjToPeoCompFnTextBlock" />
      <link:presentationArc order="2070" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdCoSelectedMeasureName" xlink:to="loc_ecdAdjToPeoCompFnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonPeoNeoAvgTotalCompAmt" xlink:label="loc_ecdNonPeoNeoAvgTotalCompAmt" />
      <link:presentationArc order="2080" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTableTextBlock" xlink:to="loc_ecdNonPeoNeoAvgTotalCompAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:label="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" />
      <link:presentationArc order="2090" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTableTextBlock" xlink:to="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:label="loc_ecdAdjToNonPeoNeoCompFnTextBlock" />
      <link:presentationArc order="2100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdAdjToNonPeoNeoCompFnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:label="loc_ecdEquityValuationAssumptionDifferenceFnTextBlock" />
      <link:presentationArc order="2110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdEquityValuationAssumptionDifferenceFnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:label="loc_ecdCompActuallyPaidVsTotalShareholderRtnTextBlock" />
      <link:presentationArc order="2120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdCompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:label="loc_ecdCompActuallyPaidVsNetIncomeTextBlock" />
      <link:presentationArc order="2130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdCompActuallyPaidVsNetIncomeTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:label="loc_ecdCompActuallyPaidVsCoSelectedMeasureTextBlock" />
      <link:presentationArc order="2140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdCompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:label="loc_ecdTotalShareholderRtnVsPeerGroupTextBlock" />
      <link:presentationArc order="2150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdTotalShareholderRtnVsPeerGroupTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:label="loc_ecdCompActuallyPaidVsOtherMeasureTextBlock" />
      <link:presentationArc order="2160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdCompActuallyPaidVsOtherMeasureTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TabularListTableTextBlock" xlink:label="loc_ecdTabularListTableTextBlock" />
      <link:presentationArc order="2170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdTabularListTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TotalShareholderRtnAmt" xlink:label="loc_ecdTotalShareholderRtnAmt" />
      <link:presentationArc order="2180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdTotalShareholderRtnAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeerGroupTotalShareholderRtnAmt" xlink:label="loc_ecdPeerGroupTotalShareholderRtnAmt" />
      <link:presentationArc order="2190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdNonPeoNeoAvgCompActuallyPaidAmt" xlink:to="loc_ecdPeerGroupTotalShareholderRtnAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="2200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPvpTableTextBlock" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_CoSelectedMeasureAmt" xlink:label="loc_ecdCoSelectedMeasureAmt" />
      <link:presentationArc order="2210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_ecdCoSelectedMeasureAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OtherPerfMeasureAmt" xlink:label="loc_ecdOtherPerfMeasureAmt" />
      <link:presentationArc order="2220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_ecdOtherPerfMeasureAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AdjToCompAmt" xlink:label="loc_ecdAdjToCompAmt" />
      <link:presentationArc order="2230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_ecdAdjToCompAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PeoName" xlink:label="loc_ecdPeoName" />
      <link:presentationArc order="2240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_ecdPeoName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MeasureName" xlink:label="loc_ecdMeasureName" />
      <link:presentationArc order="2250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPayVsPerformanceDisclosureLineItems" xlink:to="loc_ecdMeasureName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonGaapMeasureDescriptionTextBlock" xlink:label="loc_ecdNonGaapMeasureDescriptionTextBlock" />
      <link:presentationArc order="2260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdMeasureName" xlink:to="loc_ecdNonGaapMeasureDescriptionTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_Additional402vDisclosureTextBlock" xlink:label="loc_ecdAdditional402vDisclosureTextBlock" />
      <link:presentationArc order="2270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPayVsPerformanceDisclosureLineItems" xlink:to="loc_ecdAdditional402vDisclosureTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_PnsnBnftsAdjFnTextBlock" xlink:label="loc_ecdPnsnBnftsAdjFnTextBlock" />
      <link:presentationArc order="2280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPayVsPerformanceDisclosureLineItems" xlink:to="loc_ecdPnsnBnftsAdjFnTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_EqtyAwrdsAdjFnTextBlock" xlink:label="loc_ecdEqtyAwrdsAdjFnTextBlock" />
      <link:presentationArc order="2290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdPayVsPerformanceDisclosureLineItems" xlink:to="loc_ecdEqtyAwrdsAdjFnTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" xlink:title="995440 - Disclosure - Recovery of Erroneously Awarded Compensation">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_RecoveryOfErrCompDisclosureLineItems" xlink:label="loc_ecdRecoveryOfErrCompDisclosureLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ErrCompRecoveryTable" xlink:label="loc_ecdErrCompRecoveryTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdRecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecdErrCompRecoveryTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_RestatementDateAxis" xlink:label="loc_ecdRestatementDateAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdErrCompRecoveryTable" xlink:to="loc_ecdRestatementDateAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_IndividualAxis" xlink:label="loc_ecdIndividualAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdErrCompRecoveryTable" xlink:to="loc_ecdIndividualAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AllIndividualsMember" xlink:label="loc_ecdAllIndividualsMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdIndividualAxis" xlink:to="loc_ecdAllIndividualsMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_RestatementDeterminationDate" xlink:label="loc_ecdRestatementDeterminationDate" />
      <link:presentationArc order="2000" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdRecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecdRestatementDeterminationDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AggtErrCompAmt" xlink:label="loc_ecdAggtErrCompAmt" />
      <link:presentationArc order="2010" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdRestatementDeterminationDate" xlink:to="loc_ecdAggtErrCompAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ErrCompAnalysisTextBlock" xlink:label="loc_ecdErrCompAnalysisTextBlock" />
      <link:presentationArc order="2020" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAggtErrCompAmt" xlink:to="loc_ecdErrCompAnalysisTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:label="loc_ecdStkPrcOrTsrEstimationMethodTextBlock" />
      <link:presentationArc order="2030" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAggtErrCompAmt" xlink:to="loc_ecdStkPrcOrTsrEstimationMethodTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OutstandingAggtErrCompAmt" xlink:label="loc_ecdOutstandingAggtErrCompAmt" />
      <link:presentationArc order="2040" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAggtErrCompAmt" xlink:to="loc_ecdOutstandingAggtErrCompAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:label="loc_ecdAggtErrCompNotYetDeterminedTextBlock" />
      <link:presentationArc order="2050" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAggtErrCompAmt" xlink:to="loc_ecdAggtErrCompNotYetDeterminedTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryIndName" xlink:label="loc_ecdForgoneRecoveryIndName" />
      <link:presentationArc order="2060" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAggtErrCompAmt" xlink:to="loc_ecdForgoneRecoveryIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:label="loc_ecdForgoneRecoveryDueToExpenseOfEnforcementAmt" />
      <link:presentationArc order="2070" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAggtErrCompAmt" xlink:to="loc_ecdForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:label="loc_ecdForgoneRecoveryDueToViolationOfHomeCountryLawAmt" />
      <link:presentationArc order="2080" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdRestatementDeterminationDate" xlink:to="loc_ecdForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:label="loc_ecdForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" />
      <link:presentationArc order="2090" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdRestatementDeterminationDate" xlink:to="loc_ecdForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:label="loc_ecdForgoneRecoveryExplanationOfImpracticabilityTextBlock" />
      <link:presentationArc order="2100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:to="loc_ecdForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OutstandingRecoveryIndName" xlink:label="loc_ecdOutstandingRecoveryIndName" />
      <link:presentationArc order="2110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:to="loc_ecdOutstandingRecoveryIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_OutstandingRecoveryCompAmt" xlink:label="loc_ecdOutstandingRecoveryCompAmt" />
      <link:presentationArc order="2120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:to="loc_ecdOutstandingRecoveryCompAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:label="loc_ecdRestatementDoesNotRequireRecoveryTextBlock" />
      <link:presentationArc order="2130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:to="loc_ecdRestatementDoesNotRequireRecoveryTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" xlink:title="995443 - Disclosure - Award Timing Disclosure">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgDiscLineItems" xlink:label="loc_ecdAwardTmgDiscLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardsCloseToMnpiDiscTable" xlink:label="loc_ecdAwardsCloseToMnpiDiscTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardsCloseToMnpiDiscTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_IndividualAxis" xlink:label="loc_ecdIndividualAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardsCloseToMnpiDiscTable" xlink:to="loc_ecdIndividualAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AllIndividualsMember" xlink:label="loc_ecdAllIndividualsMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdIndividualAxis" xlink:to="loc_ecdAllIndividualsMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardsCloseToMnpiDiscTable" xlink:to="loc_us-gaapAwardTypeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgMnpiDiscTextBlock" xlink:label="loc_ecdAwardTmgMnpiDiscTextBlock" />
      <link:presentationArc order="2000" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardTmgMnpiDiscTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgMethodTextBlock" xlink:label="loc_ecdAwardTmgMethodTextBlock" />
      <link:presentationArc order="2010" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardTmgMethodTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgPredtrmndFlag" xlink:label="loc_ecdAwardTmgPredtrmndFlag" />
      <link:presentationArc order="2020" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardTmgPredtrmndFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgMnpiCnsdrdFlag" xlink:label="loc_ecdAwardTmgMnpiCnsdrdFlag" />
      <link:presentationArc order="2030" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardTmgMnpiCnsdrdFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:label="loc_ecdAwardTmgHowMnpiCnsdrdTextBlock" />
      <link:presentationArc order="2040" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardTmgHowMnpiCnsdrdTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MnpiDiscTimedForCompValFlag" xlink:label="loc_ecdMnpiDiscTimedForCompValFlag" />
      <link:presentationArc order="2050" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdMnpiDiscTimedForCompValFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:label="loc_ecdAwardsCloseToMnpiDiscTableTextBlock" />
      <link:presentationArc order="2060" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardsCloseToMnpiDiscTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardsCloseToMnpiDiscIndName" xlink:label="loc_ecdAwardsCloseToMnpiDiscIndName" />
      <link:presentationArc order="2070" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardsCloseToMnpiDiscIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardUndrlygSecuritiesAmt" xlink:label="loc_ecdAwardUndrlygSecuritiesAmt" />
      <link:presentationArc order="2080" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardUndrlygSecuritiesAmt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardExrcPrice" xlink:label="loc_ecdAwardExrcPrice" />
      <link:presentationArc order="2090" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardExrcPrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_AwardGrantDateFairValue" xlink:label="loc_ecdAwardGrantDateFairValue" />
      <link:presentationArc order="2100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdAwardGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_UndrlygSecurityMktPriceChngPct" xlink:label="loc_ecdUndrlygSecurityMktPriceChngPct" />
      <link:presentationArc order="2110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdAwardTmgDiscLineItems" xlink:to="loc_ecdUndrlygSecurityMktPriceChngPct" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:title="995445 - Disclosure - Insider Trading Arrangements">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTradingArrLineItems" xlink:label="loc_ecdInsiderTradingArrLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_MtrlTermsOfTrdArrTextBlock" xlink:label="loc_ecdMtrlTermsOfTrdArrTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdMtrlTermsOfTrdArrTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrIndName" xlink:label="loc_ecdTrdArrIndName" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdTrdArrIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrIndTitle" xlink:label="loc_ecdTrdArrIndTitle" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdTrdArrIndTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_Rule10b51ArrAdoptedFlag" xlink:label="loc_ecdRule10b51ArrAdoptedFlag" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdRule10b51ArrAdoptedFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonRule10b51ArrAdoptedFlag" xlink:label="loc_ecdNonRule10b51ArrAdoptedFlag" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdNonRule10b51ArrAdoptedFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrAdoptionDate" xlink:label="loc_ecdTrdArrAdoptionDate" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdTrdArrAdoptionDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_Rule10b51ArrTrmntdFlag" xlink:label="loc_ecdRule10b51ArrTrmntdFlag" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdRule10b51ArrTrmntdFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_NonRule10b51ArrTrmntdFlag" xlink:label="loc_ecdNonRule10b51ArrTrmntdFlag" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdNonRule10b51ArrTrmntdFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrTerminationDate" xlink:label="loc_ecdTrdArrTerminationDate" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdTrdArrTerminationDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrExpirationDate" xlink:label="loc_ecdTrdArrExpirationDate" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdTrdArrExpirationDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrDuration" xlink:label="loc_ecdTrdArrDuration" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdTrdArrDuration" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_TrdArrSecuritiesAggAvailAmt" xlink:label="loc_ecdTrdArrSecuritiesAggAvailAmt" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingArrLineItems" xlink:to="loc_ecdTrdArrSecuritiesAggAvailAmt" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" xlink:title="995447 - Disclosure - Insider Trading Policies and Procedures">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTradingPoliciesProcLineItems" xlink:label="loc_ecdInsiderTradingPoliciesProcLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:label="loc_ecdInsiderTrdPoliciesProcAdoptedFlag" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingPoliciesProcLineItems" xlink:to="loc_ecdInsiderTrdPoliciesProcAdoptedFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd#ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:label="loc_ecdInsiderTrdPoliciesProcNotAdoptedTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecdInsiderTradingPoliciesProcLineItems" xlink:to="loc_ecdInsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/General" xlink:title="999013 - Disclosure - General">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="loc_us-gaapOrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="loc_us-gaapOrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="loc_us-gaapOrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies" xlink:title="999014 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaapSignificantAccountingPoliciesTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapSignificantAccountingPoliciesTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Acquisitions" xlink:title="999015 - Disclosure - Acquisitions">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaapBusinessCombinationDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" xlink:to="loc_us-gaapBusinessCombinationDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/InventoriesNet" xlink:title="999016 - Disclosure - Inventories, net">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaapInventoryDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities" xlink:title="999017 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaapRevenueFromContractWithCustomerTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapRevenueFromContractWithCustomerTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwill" xlink:title="999018 - Disclosure - Intangible Assets and Goodwill">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaapIntangibleAssetsDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapIntangibleAssetsDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/SupplierFinanceProgram" xlink:title="999019 - Disclosure - Supplier Finance Program">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SupplierFinanceProgramTextBlock" xlink:label="loc_us-gaapSupplierFinanceProgramTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapSupplierFinanceProgramTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/Debt" xlink:title="999020 - Disclosure - Debt">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaapDebtDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapDebtDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements" xlink:title="999021 - Disclosure - Derivative Financial Instruments and Fair Value Measurements">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxes" xlink:title="999022 - Disclosure - Income Taxes">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaapIncomeTaxDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedParties" xlink:title="999023 - Disclosure - Related Parties">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaapRelatedPartyTransactionsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="loc_us-gaapRelatedPartyTransactionsDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsAbstract" xlink:to="loc_us-gaapRelatedPartyTransactionsDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquity" xlink:title="999024 - Disclosure - Shareholders&#8217; Equity">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaapStockholdersEquityNoteDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapStockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/CommitmentsAndContingencies" xlink:title="999025 - Disclosure - Commitments and Contingencies">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapCommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies" xlink:title="999026 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="loc_us-gaapBasisOfAccountingPolicyPolicyTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapBasisOfAccountingPolicyPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="loc_us-gaapConsolidationPolicyTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapConsolidationPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="loc_us-gaapDerivativesPolicyTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapDerivativesPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ExtendedProductWarrantyPolicy" xlink:label="loc_us-gaapExtendedProductWarrantyPolicy" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapExtendedProductWarrantyPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" xlink:label="loc_TGLSRecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_TGLSRecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaapNewAccountingPronouncementsPolicyPolicyTextBlock" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapNewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables" xlink:title="999027 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaapScheduleOfProductWarrantyLiabilityTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/AcquisitionsTables" xlink:title="999028 - Disclosure - Acquisitions (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/InventoriesNetTables" xlink:title="999029 - Disclosure - Inventories, net (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaapScheduleOfInventoryCurrentTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables" xlink:title="999030 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember" xlink:label="loc_us-gaapReportableSegmentAggregationBeforeOtherOperatingSegmentMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_us-gaapReportableSegmentAggregationBeforeOtherOperatingSegmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueByLiabilityClassAxis" xlink:label="loc_us-gaapFairValueByLiabilityClassAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapFairValueByLiabilityClassAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:label="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueByLiabilityClassAxis" xlink:to="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractAssetsMember" xlink:label="loc_TGLSContractAssetsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:to="loc_TGLSContractAssetsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractLiabilitiesMember" xlink:label="loc_TGLSContractLiabilitiesMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:to="loc_TGLSContractLiabilitiesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaapDisaggregationOfRevenueTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDisaggregationOfRevenueTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="loc_us-gaapScheduleOfSegmentReportingInformationBySegmentTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock" xlink:label="loc_TGLSScheduleOfRevenuesDistributionByEndMarketTableTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSScheduleOfRevenuesDistributionByEndMarketTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="loc_us-gaapScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" xlink:label="loc_TGLSScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables" xlink:title="999031 - Disclosure - Intangible Assets and Goodwill (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaapScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DebtTables" xlink:title="999032 - Disclosure - Debt (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="loc_us-gaapScheduleOfDebtTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfDebtTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" xlink:label="loc_TGLSScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_TGLSScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaapFinanceLeaseLiabilityMaturityTableTextBlock" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables" xlink:title="999033 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" xlink:label="loc_TGLSScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_TGLSScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="loc_us-gaapScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:label="loc_us-gaapScheduleOfDebtInstrumentsTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfDebtInstrumentsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxesTables" xlink:title="999034 - Disclosure - Income Taxes (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaapScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedPartiesTables" xlink:title="999035 - Disclosure - Related Parties (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaapRelatedPartyTransactionsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:label="loc_us-gaapScheduleOfRelatedPartyTransactionsTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsAbstract" xlink:to="loc_us-gaapScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock" xlink:label="loc_TGLSScheduleOfSaleToRelatedPartyTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsAbstract" xlink:to="loc_TGLSScheduleOfSaleToRelatedPartyTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquityTables" xlink:title="999036 - Disclosure - Shareholders&#8217; Equity (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails" xlink:title="999037 - Disclosure - Schedule of Product Warranty Liability (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="loc_us-gaapStandardProductWarrantyAccrual" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapStandardProductWarrantyAccrual" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="loc_us-gaapStandardProductWarrantyAccrualWarrantiesIssued" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapStandardProductWarrantyAccrualWarrantiesIssued" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="loc_us-gaapStandardProductWarrantyAccrualPayments" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapStandardProductWarrantyAccrualPayments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="loc_us-gaapStandardProductWarrantyAccrual_2" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapStandardProductWarrantyAccrual_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:title="999038 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StandardProductWarrantyDescription" xlink:label="loc_us-gaapStandardProductWarrantyDescription" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapStandardProductWarrantyDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RecoveryOfPreviouslyPaidImportTariffs" xlink:label="loc_TGLSRecoveryOfPreviouslyPaidImportTariffs" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_TGLSRecoveryOfPreviouslyPaidImportTariffs" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails" xlink:title="999039 - Disclosure - Schedule of Purchase Price Allocation Consideration Transferred (Details)">
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredAbstract" xlink:label="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredAbstract" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:label="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredAbstract" xlink:to="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RestatementAxis" xlink:label="loc_srtRestatementAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSScheduleOfPurchasePriceAllocationConsiderationTransferredTable" xlink:to="loc_srtRestatementAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="loc_srtScenarioPreviouslyReportedMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtScenarioPreviouslyReportedMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:label="loc_srtRevisionOfPriorPeriodReclassificationAdjustmentMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtRevisionOfPriorPeriodReclassificationAdjustmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" xlink:label="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_TGLSBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/AcquisitionsDetailsNarrative" xlink:title="999040 - Disclosure - Acquisitions (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaapBusinessAcquisitionLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContiglassAssetAcquisitionLLCMember" xlink:label="loc_TGLSContiglassAssetAcquisitionLLCMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:to="loc_TGLSContiglassAssetAcquisitionLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtRangeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationPriceOfAcquisitionExpected" xlink:label="loc_us-gaapBusinessCombinationPriceOfAcquisitionExpected" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationPriceOfAcquisitionExpected" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:label="loc_us-gaapBusinessAcquisitionCostOfAcquiredEntityTransactionCosts" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessAcquisitionCostOfAcquiredEntityTransactionCosts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_WorkingCapitalAdjustment" xlink:label="loc_TGLSWorkingCapitalAdjustment" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_TGLSWorkingCapitalAdjustment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfInventoriesDetails" xlink:title="999041 - Disclosure - Schedule of Inventories (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaapInventoryDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryRawMaterials" xlink:label="loc_us-gaapInventoryRawMaterials" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryRawMaterials" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryWorkInProcess" xlink:label="loc_us-gaapInventoryWorkInProcess" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryWorkInProcess" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaapInventoryFinishedGoods" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryFinishedGoods" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherInventoriesSpareParts" xlink:label="loc_us-gaapOtherInventoriesSpareParts" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapOtherInventoriesSpareParts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InventoryPackingMaterialGross" xlink:label="loc_TGLSInventoryPackingMaterialGross" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_TGLSInventoryPackingMaterialGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryGross" xlink:label="loc_us-gaapInventoryGross" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryGross" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryValuationReserves" xlink:label="loc_us-gaapInventoryValuationReserves" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryValuationReserves" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapInventoryDisclosureAbstract" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails" xlink:title="999042 - Disclosure - Schedule of Disaggregation by Revenue (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapDisaggregationOfRevenueLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtProductOrServiceAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FixedPriceContractsMember" xlink:label="loc_TGLSFixedPriceContractsMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSFixedPriceContractsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ProductSalesMember" xlink:label="loc_TGLSProductSalesMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSProductSalesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NumberOfReportableSegments" xlink:label="loc_us-gaapNumberOfReportableSegments" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapNumberOfReportableSegments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails" xlink:title="999043 - Disclosure - Schedule of Geographic Information (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapDisaggregationOfRevenueLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtStatementGeographicalAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_CO" xlink:label="loc_countryCO" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCO" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_US" xlink:label="loc_countryUS" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherMember" xlink:label="loc_TGLSOtherMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_TGLSOtherMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails" xlink:title="999044 - Disclosure - Schedule of Revenues Distribution By End Market (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapDisaggregationOfRevenueLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtProductOrServiceAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ResidentialMember" xlink:label="loc_TGLSResidentialMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSResidentialMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CommercialMember" xlink:label="loc_TGLSCommercialMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_TGLSCommercialMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails" xlink:title="999045 - Disclosure - Schedule of Trade Accounts Receivable (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="loc_us-gaapAccountsReceivableGrossCurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAccountsReceivableGrossCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNetNoncurrent" xlink:label="loc_us-gaapAccountsReceivableNetNoncurrent" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAccountsReceivableNetNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAccountsReceivableNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails" xlink:title="999046 - Disclosure - Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableWriteOffs" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent_2" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails" xlink:title="999047 - Disclosure - Schedule of Contract Assets and Liabilities (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetCurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerAssetNetCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetNoncurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerAssetNetNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NetContractLiabilitiesAssets" xlink:label="loc_TGLSNetContractLiabilitiesAssets" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_TGLSNetContractLiabilitiesAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_UnbilledReceivablesCurrent" xlink:label="loc_us-gaapUnbilledReceivablesCurrent" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapUnbilledReceivablesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ConstructionContractorReceivableRetainage" xlink:label="loc_us-gaapConstructionContractorReceivableRetainage" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapConstructionContractorReceivableRetainage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerAssetGrossCurrent" xlink:label="loc_us-gaapContractWithCustomerAssetGrossCurrent" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerAssetGrossCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_BillingsInExcessOfCosts" xlink:label="loc_TGLSBillingsInExcessOfCosts" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_TGLSBillingsInExcessOfCosts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" xlink:label="loc_us-gaapProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaapContractWithCustomerLiability" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiability" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent_2" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent_2" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative" xlink:title="999048 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesAbstract" xlink:label="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesAbstract" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:label="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesAbstract" xlink:to="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementScenarioAxis" xlink:label="loc_srtStatementScenarioAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSRevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable" xlink:to="loc_srtStatementScenarioAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srtScenarioUnspecifiedDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementScenarioAxis" xlink:to="loc_srtScenarioUnspecifiedDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioForecastMember" xlink:label="loc_srtScenarioForecastMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtScenarioUnspecifiedDomain" xlink:to="loc_srtScenarioForecastMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaapContractWithCustomerLiabilityRevenueRecognized" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapContractWithCustomerLiabilityRevenueRecognized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="loc_us-gaapRevenueRemainingPerformanceObligation" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenueRemainingPerformanceObligation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:label="loc_us-gaapRevenueRemainingPerformanceObligationPercentage" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenueRemainingPerformanceObligationPercentage" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails" xlink:title="999049 - Disclosure - Schedule of Finite-Lived Intangible Assets, Net (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaapTradeNamesMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapTradeNamesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SoftwareAndLicensesMember" xlink:label="loc_TGLSSoftwareAndLicensesMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_TGLSSoftwareAndLicensesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" xlink:label="loc_TGLSNoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_TGLSNoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ContractBacklogMember" xlink:label="loc_TGLSContractBacklogMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_TGLSContractBacklogMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsGross" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails" xlink:title="999050 - Disclosure - Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" xlink:label="loc_TGLSFiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_TGLSFiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:title="999051 - Disclosure - Intangible Assets and Goodwill (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaapAcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapAcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaapAmortizationOfIntangibleAssets" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapAmortizationOfIntangibleAssets" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative" xlink:title="999052 - Disclosure - Supplier Finance Program (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:label="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:label="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:to="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="loc_us-gaapFinancialInstrumentAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:to="loc_us-gaapFinancialInstrumentAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFinancialInstrumentAxis" xlink:to="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SupplierFinanceProgramMember" xlink:label="loc_TGLSSupplierFinanceProgramMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="loc_TGLSSupplierFinanceProgramMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtSecuritiesHeldToMaturityAllowanceForCreditLossTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ProgramRightsObligationsCurrent" xlink:label="loc_us-gaapProgramRightsObligationsCurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="loc_us-gaapProgramRightsObligationsCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="loc_us-gaapAccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="loc_us-gaapOtherLiabilitiesCurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems" xlink:to="loc_us-gaapOtherLiabilitiesCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails" xlink:title="999053 - Disclosure - Schedule of Long Term Debt (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaapLineOfCredit" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLineOfCredit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseDebt" xlink:label="loc_TGLSFinanceLeaseDebt" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_TGLSFinanceLeaseDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLongTermDebtCurrent" xlink:label="loc_us-gaapOtherLongTermDebtCurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapOtherLongTermDebtCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacility" xlink:label="loc_TGLSSeniorSecuredCreditFacility" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_TGLSSeniorSecuredCreditFacility" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredCostsCurrent" xlink:label="loc_us-gaapDeferredCostsCurrent" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapDeferredCostsCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="loc_us-gaapDebtInstrumentCarryingAmount" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapDebtInstrumentCarryingAmount" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtCurrent" xlink:label="loc_us-gaapLongTermDebtCurrent" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtNoncurrent" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails" xlink:title="999054 - Disclosure - Schedule of Interest Income Expenses net and deferred cost (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestExpense" xlink:label="loc_us-gaapInterestExpense" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapInterestExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeferredCostsOfFinancing" xlink:label="loc_TGLSDeferredCostsOfFinancing" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_TGLSDeferredCostsOfFinancing" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DerivativeFinancialInstrumentGain" xlink:label="loc_TGLSDerivativeFinancialInstrumentGain" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_TGLSDerivativeFinancialInstrumentGain" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing" xlink:label="loc_TGLSInterestIncomeExpenseNetAndDeferredCostOfFinancing" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_TGLSInterestIncomeExpenseNetAndDeferredCostOfFinancing" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails" xlink:title="999055 - Disclosure - Schedule of Maturities of Long Term Debt (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails" xlink:title="999056 - Disclosure - Schedule of Future Minimum Lease Payments (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearTwo" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearThree" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearFour" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:label="loc_TGLSFinanceLeaseLiabilityPaymentsDueAfterYearFour" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_TGLSFinanceLeaseLiabilityPaymentsDueAfterYearFour" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDue" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaapFinanceLeaseLiabilityUndiscountedExcessAmount" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseLiability" xlink:label="loc_us-gaapFinanceLeaseLiability" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapFinanceLeaseLiability" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DebtDetailsNarrative" xlink:title="999057 - Disclosure - Debt (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="loc_us-gaapLineOfCreditFacilityTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract" xlink:to="loc_us-gaapLineOfCreditFacilityTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="loc_us-gaapLineOfCreditFacilityLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapLineOfCreditFacilityLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaapCreditFacilityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapCreditFacilityAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacilityMember" xlink:label="loc_TGLSSeniorSecuredCreditFacilityMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditFacilityDomain" xlink:to="loc_TGLSSeniorSecuredCreditFacilityMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_srtRangeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityTable" xlink:to="loc_us-gaapDebtInstrumentAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="loc_us-gaapSecuredOvernightFinancingRateSofrMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_us-gaapSecuredOvernightFinancingRateSofrMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="loc_us-gaapDebtInstrumentMaturityDateDescription" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentMaturityDateDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="loc_us-gaapDebtInstrumentInterestRateEffectivePercentage" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateEffectivePercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsOfDebtIssuanceCosts" xlink:label="loc_us-gaapPaymentsOfDebtIssuanceCosts" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapPaymentsOfDebtIssuanceCosts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:label="loc_us-gaapGainsLossesOnExtinguishmentOfDebt" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapGainsLossesOnExtinguishmentOfDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:label="loc_us-gaapWriteOffOfDeferredDebtIssuanceCost" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapWriteOffOfDeferredDebtIssuanceCost" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_TerminationCosts" xlink:label="loc_TGLSTerminationCosts" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSTerminationCosts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LegalFees" xlink:label="loc_us-gaapLegalFees" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapLegalFees" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DeductedFromProceedsFromIssuanceOfDebt" xlink:label="loc_TGLSDeductedFromProceedsFromIssuanceOfDebt" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSDeductedFromProceedsFromIssuanceOfDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredFinanceCostsNoncurrentNet" xlink:label="loc_us-gaapDeferredFinanceCostsNoncurrentNet" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDeferredFinanceCostsNoncurrentNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RepaymentsOfDebt" xlink:label="loc_us-gaapRepaymentsOfDebt" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapRepaymentsOfDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtWeightedAverageInterestRate" xlink:label="loc_us-gaapDebtWeightedAverageInterestRate" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapDebtWeightedAverageInterestRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="loc_us-gaapFinanceLeaseRightOfUseAsset" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseRightOfUseAsset" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" xlink:label="loc_TGLSFinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseShortTermDebt" xlink:label="loc_TGLSFinanceLeaseShortTermDebt" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeaseShortTermDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeaseLongTermDebt" xlink:label="loc_TGLSFinanceLeaseLongTermDebt" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeaseLongTermDebt" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseRightOfUseAssetAmortization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="loc_us-gaapFinanceLeaseInterestExpense" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseInterestExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="loc_us-gaapFinanceLeasePrincipalPayments" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeasePrincipalPayments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" xlink:label="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" xlink:label="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSFinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" xlink:label="loc_TGLSNoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_TGLSNoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaapFinanceLeaseWeightedAverageRemainingLeaseTerm1" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaapFinanceLeaseWeightedAverageDiscountRatePercent" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLineOfCreditFacilityLineItems" xlink:to="loc_us-gaapFinanceLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails" xlink:title="999058 - Disclosure - Schedule of Fair Value of Foreign Currency Hedges (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestRateSwapContractsMember" xlink:label="loc_TGLSInterestRateSwapContractsMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSInterestRateSwapContractsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ForeignCurrencyNonDeliveryForwardsMember" xlink:label="loc_TGLSForeignCurrencyNonDeliveryForwardsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSForeignCurrencyNonDeliveryForwardsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StatementOfBalanceSheetLocationAxis" xlink:label="loc_TGLSStatementOfBalanceSheetLocationAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_TGLSStatementOfBalanceSheetLocationAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StatementOfBalanceSheetLocationDomain" xlink:label="loc_TGLSStatementOfBalanceSheetLocationDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSStatementOfBalanceSheetLocationAxis" xlink:to="loc_TGLSStatementOfBalanceSheetLocationDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherCurrentAssetMember" xlink:label="loc_TGLSOtherCurrentAssetMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSStatementOfBalanceSheetLocationDomain" xlink:to="loc_TGLSOtherCurrentAssetMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="loc_us-gaapAccruedLiabilitiesMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_TGLSStatementOfBalanceSheetLocationDomain" xlink:to="loc_us-gaapAccruedLiabilitiesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedges" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedges" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsAndHedges" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgesLiabilities" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgesLiabilities" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsAndHedgesLiabilities" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails" xlink:title="999059 - Disclosure - Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" xlink:label="loc_TGLSInterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSInterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember" xlink:label="loc_TGLSInterestExpenseNetOfDeferredCostOfFinancingMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSInterestExpenseNetOfDeferredCostOfFinancingMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_DerivativeGainLossesOnDerivativeNet" xlink:label="loc_TGLSDerivativeGainLossesOnDerivativeNet" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_TGLSDerivativeGainLossesOnDerivativeNet" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails" xlink:title="999060 - Disclosure - Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtFairValue" xlink:label="loc_us-gaapLongTermDebtFairValue" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="loc_us-gaapLongTermDebtNoncurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapLongTermDebtNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative" xlink:title="999061 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaapDerivativeInstrumentsGainLossLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentsGainLossLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaapDerivativeInstrumentRiskAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDerivativeInstrumentRiskAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaapDerivativeContractTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentRiskAxis" xlink:to="loc_us-gaapDerivativeContractTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestRateSwapMember" xlink:label="loc_us-gaapInterestRateSwapMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_us-gaapInterestRateSwapMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ForeignCurrencyNonDeliveryForwardsMember" xlink:label="loc_TGLSForeignCurrencyNonDeliveryForwardsMember" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeContractTypeDomain" xlink:to="loc_TGLSForeignCurrencyNonDeliveryForwardsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_srtRangeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityAxis" xlink:label="loc_us-gaapCreditFacilityAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapCreditFacilityAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CreditFacilityDomain" xlink:label="loc_us-gaapCreditFacilityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditFacilityAxis" xlink:to="loc_us-gaapCreditFacilityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SeniorSecuredCreditFacilityMember" xlink:label="loc_TGLSSeniorSecuredCreditFacilityMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditFacilityDomain" xlink:to="loc_TGLSSeniorSecuredCreditFacilityMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentAxis" xlink:label="loc_us-gaapDebtInstrumentAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="loc_us-gaapDebtInstrumentAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="loc_us-gaapDebtInstrumentNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentAxis" xlink:to="loc_us-gaapDebtInstrumentNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SecuredOvernightFinancingRateSofrMember" xlink:label="loc_us-gaapSecuredOvernightFinancingRateSofrMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtInstrumentNameDomain" xlink:to="loc_us-gaapSecuredOvernightFinancingRateSofrMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeFixedInterestRate" xlink:label="loc_us-gaapDerivativeFixedInterestRate" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeFixedInterestRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentMaturityDateDescription" xlink:label="loc_us-gaapDebtInstrumentMaturityDateDescription" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDebtInstrumentMaturityDateDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="loc_us-gaapDebtInstrumentBasisSpreadOnVariableRate1" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaapDerivativeAssets" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeAssets" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InterestEarningAssetsAverageAmountOutstanding" xlink:label="loc_us-gaapInterestEarningAssetsAverageAmountOutstanding" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapInterestEarningAssetsAverageAmountOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermDebtAverageAmountOutstanding" xlink:label="loc_us-gaapLongTermDebtAverageAmountOutstanding" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapLongTermDebtAverageAmountOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DerivativeInstrumentsAndHedges" xlink:label="loc_us-gaapDerivativeInstrumentsAndHedges" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDerivativeInstrumentsGainLossLineItems" xlink:to="loc_us-gaapDerivativeInstrumentsAndHedges" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails" xlink:title="999062 - Disclosure - Schedule of Components of Income Tax Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExaminationTable" xlink:label="loc_us-gaapIncomeTaxExaminationTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxExaminationTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExaminationLineItems" xlink:label="loc_us-gaapIncomeTaxExaminationLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxExaminationTable" xlink:to="loc_us-gaapIncomeTaxExaminationLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxExaminationTable" xlink:to="loc_srtStatementGeographicalAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_US" xlink:label="loc_countryUS" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_CO" xlink:label="loc_countryCO" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryCO" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2026/country-2026.xsd#country_PA" xlink:label="loc_countryPA" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryPA" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentIncomeTaxExpenseBenefit" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapCurrentIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaapEffectiveIncomeTaxRateContinuingOperations" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxExaminationLineItems" xlink:to="loc_us-gaapEffectiveIncomeTaxRateContinuingOperations" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/IncomeTaxesDetailsNarrative" xlink:title="999063 - Disclosure - Income Taxes (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails" xlink:title="999064 - Disclosure - Schedule of Related Parties (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaapRelatedPartyTransactionsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsAbstract" xlink:to="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaapRelatedPartyTransactionLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="loc_us-gaapRelatedPartyTransactionAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AlutraficLedSASMember" xlink:label="loc_TGLSAlutraficLedSASMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSAlutraficLedSASMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StudioAvantiSASMember" xlink:label="loc_TGLSStudioAvantiSASMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStudioAvantiSASMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PrismaGlassLLCMember" xlink:label="loc_TGLSPrismaGlassLLCMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSPrismaGlassLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_OtherMember" xlink:label="loc_TGLSOtherMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSOtherMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_VidrioAndinoMember" xlink:label="loc_TGLSVidrioAndinoMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSVidrioAndinoMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherReceivablesNetCurrent" xlink:label="loc_us-gaapOtherReceivablesNetCurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapOtherReceivablesNetCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_OtherLiabilitiesCurrent" xlink:label="loc_us-gaapOtherLiabilitiesCurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapOtherLiabilitiesCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails" xlink:title="999065 - Disclosure - Schedule of Sale to Related Parties (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaapRelatedPartyTransactionsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsAbstract" xlink:to="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaapRelatedPartyTransactionLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="loc_us-gaapRelatedPartyTransactionAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PrismaGlassLLCMember" xlink:label="loc_TGLSPrismaGlassLLCMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSPrismaGlassLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AlutraficLedSASMember" xlink:label="loc_TGLSAlutraficLedSASMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSAlutraficLedSASMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StudioAvantiSASMember" xlink:label="loc_TGLSStudioAvantiSASMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStudioAvantiSASMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SalesToOtherRelatedPartiesMember" xlink:label="loc_TGLSSalesToOtherRelatedPartiesMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSSalesToOtherRelatedPartiesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapRevenues" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/RelatedPartiesDetailsNarrative" xlink:title="999066 - Disclosure - Related Parties (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="loc_us-gaapRelatedPartyTransactionsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsAbstract" xlink:to="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="loc_us-gaapRelatedPartyTransactionLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionAxis" xlink:label="loc_us-gaapRelatedPartyTransactionAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionDomain" xlink:label="loc_us-gaapRelatedPartyTransactionDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionAxis" xlink:to="loc_us-gaapRelatedPartyTransactionDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AlutraficLedSASMember" xlink:label="loc_TGLSAlutraficLedSASMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSAlutraficLedSASMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FundacionTecnoglassMember" xlink:label="loc_TGLSFundacionTecnoglassMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSFundacionTecnoglassMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PrismaGlassLLCMember" xlink:label="loc_TGLSPrismaGlassLLCMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSPrismaGlassLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_SantaMariaDelMarSASMember" xlink:label="loc_TGLSSantaMariaDelMarSASMember" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSSantaMariaDelMarSASMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StormArmourSolutionsLLCMember" xlink:label="loc_TGLSStormArmourSolutionsLLCMember" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStormArmourSolutionsLLCMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StudioAvantiSASMember" xlink:label="loc_TGLSStudioAvantiSASMember" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSStudioAvantiSASMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ZofracostaSAMember" xlink:label="loc_TGLSZofracostaSAMember" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionDomain" xlink:to="loc_TGLSZofracostaSAMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_RelatedPartyMember" xlink:label="loc_us-gaapRelatedPartyMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_us-gaapRelatedPartyMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_srtTitleOfIndividualAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CEOAndCOOMember" xlink:label="loc_TGLSCEOAndCOOMember" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_TGLSCEOAndCOOMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_StormArmourSolutionsLLCMember" xlink:label="loc_TGLSStormArmourSolutionsLLCMember_2" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_TGLSStormArmourSolutionsLLCMember_2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_OwnershipAxis" xlink:label="loc_srtOwnershipAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="loc_srtOwnershipAxis" order="50" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_OwnershipDomain" xlink:label="loc_srtOwnershipDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipAxis" xlink:to="loc_srtOwnershipDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_VidrioAndinoMember" xlink:label="loc_TGLSVidrioAndinoMember" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtOwnershipDomain" xlink:to="loc_TGLSVidrioAndinoMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapRevenues" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapAccountsReceivableNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_CashContributionsForSocialCauses" xlink:label="loc_TGLSCashContributionsForSocialCauses" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSCashContributionsForSocialCauses" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PurchasePriceOfFuel" xlink:label="loc_TGLSPurchasePriceOfFuel" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSPurchasePriceOfFuel" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_Investments" xlink:label="loc_us-gaapInvestments" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="loc_us-gaapMinorityInterestOwnershipPercentageByParent" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapMinorityInterestOwnershipPercentageByParent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesGross" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharesIssuedPricePerShare" xlink:label="loc_us-gaapSharesIssuedPricePerShare" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapSharesIssuedPricePerShare" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_PremiumClosingStockPercentage" xlink:label="loc_TGLSPremiumClosingStockPercentage" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSPremiumClosingStockPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ExpectedOwnershipPercentage" xlink:label="loc_TGLSExpectedOwnershipPercentage" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSExpectedOwnershipPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FutureAdditionalContributionAmount" xlink:label="loc_TGLSFutureAdditionalContributionAmount" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_TGLSFutureAdditionalContributionAmount" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_PaymentsToAcquireProductiveAssets" xlink:label="loc_us-gaapPaymentsToAcquireProductiveAssets" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapPaymentsToAcquireProductiveAssets" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapAccountsPayableCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="loc_us-gaapIncomeLossFromEquityMethodInvestments" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionLineItems" xlink:to="loc_us-gaapIncomeLossFromEquityMethodInvestments" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails" xlink:title="999067 - Disclosure - Schedule of Earnings Per Share, Basic and Diluted (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_EffectOfDilutiveSecuritiesAndStockDividend" xlink:label="loc_TGLSEffectOfDilutiveSecuritiesAndStockDividend" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_TGLSEffectOfDilutiveSecuritiesAndStockDividend" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapEarningsPerShareBasic" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapEarningsPerShareDiluted" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative" xlink:title="999068 - Disclosure - Shareholders&#8217; Equity (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossTable" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" xlink:to="loc_us-gaapAwardTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_QuarterlyRateMember" xlink:label="loc_TGLSQuarterlyRateMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_TGLSQuarterlyRateMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_AnnualBasisMember" xlink:label="loc_TGLSAnnualBasisMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_TGLSAnnualBasisMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="loc_us-gaapTreasuryStockCommonMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapTreasuryStockCommonMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaapSharePrice" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapSharePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="loc_us-gaapTreasuryStockSharesAcquired" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapTreasuryStockSharesAcquired" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:label="loc_us-gaapTreasuryStockValueAcquiredCostMethod" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapTreasuryStockValueAcquiredCostMethod" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaapTreasuryStockValue" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossLineItems" xlink:to="loc_us-gaapTreasuryStockValue" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:title="999069 - Disclosure - Commitments and Contingencies (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LossContingenciesTable" xlink:label="loc_us-gaapLossContingenciesTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLossContingenciesTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LossContingenciesLineItems" xlink:label="loc_us-gaapLossContingenciesLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLossContingenciesTable" xlink:to="loc_us-gaapLossContingenciesLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLossContingenciesTable" xlink:to="loc_srtRangeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_StatementScenarioAxis" xlink:label="loc_srtStatementScenarioAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLossContingenciesTable" xlink:to="loc_srtStatementScenarioAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="loc_srtScenarioUnspecifiedDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementScenarioAxis" xlink:to="loc_srtScenarioUnspecifiedDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_FebruaryTwentyEightThousandThirtyThreeMember" xlink:label="loc_TGLSFebruaryTwentyEightThousandThirtyThreeMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtScenarioUnspecifiedDomain" xlink:to="loc_TGLSFebruaryTwentyEightThousandThirtyThreeMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="tgls-20260630.xsd#TGLS_ThroughTwoThousandTwentyEightMember" xlink:label="loc_TGLSThroughTwoThousandTwentyEightMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtScenarioUnspecifiedDomain" xlink:to="loc_TGLSThroughTwoThousandTwentyEightMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="loc_us-gaapLongTermPurchaseCommitmentAmount" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLossContingenciesLineItems" xlink:to="loc_us-gaapLongTermPurchaseCommitmentAmount" xlink:type="arc" />
    </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - $ / shares<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Aug. 03, 2026</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jun. 30,  2026<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2026<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-35436<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">TECNOGLASS
HOLDINGS INC.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001534675<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">98-1271120<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">FL<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">3550
NW 49th Street<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Miami<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">FL<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCountry', window );">Entity Address, Country</a></td>
<td class="text">US<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">33142<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CountryRegion', window );">Country Region</a></td>
<td class="text">+1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">305<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">638 5151<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Ordinary
    Shares<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TGLS<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">44,364,616<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityListingParValuePerShare', window );">Entity Listing, Par Value Per Share</a></td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CountryRegion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Region code of country</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CountryRegion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCountry">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>ISO 3166-1 alpha-2 country code.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCountry</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:countryCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityListingParValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The par value per share of security quoted in same currency as Trading currency. Example: '0.01'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityListingParValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 80,814<span></span>
</td>
<td class="nump">$ 100,901<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermInvestments', window );">Investments</a></td>
<td class="nump">3,466<span></span>
</td>
<td class="nump">3,150<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Trade accounts receivable, net</a></td>
<td class="nump">287,466<span></span>
</td>
<td class="nump">239,448<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">271,595<span></span>
</td>
<td class="nump">213,524<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets &#8211; current portion</a></td>
<td class="nump">29,701<span></span>
</td>
<td class="nump">31,809<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">55,082<span></span>
</td>
<td class="nump">62,724<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">730,199<span></span>
</td>
<td class="nump">653,558<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNoncurrentAbstract', window );"><strong>Long-term assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">562,122<span></span>
</td>
<td class="nump">476,159<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetNoncurrent', window );">Long term accounts receivable</a></td>
<td class="nump">1,887<span></span>
</td>
<td class="nump">1,730<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">329<span></span>
</td>
<td class="nump">1,257<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetNoncurrent', window );">Contract assets &#8211; non-current</a></td>
<td class="nump">28,414<span></span>
</td>
<td class="nump">20,506<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets</a></td>
<td class="nump">13,808<span></span>
</td>
<td class="nump">12,959<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">30,059<span></span>
</td>
<td class="nump">30,059<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermInvestments', window );">Equity method investment</a></td>
<td class="nump">55,656<span></span>
</td>
<td class="nump">57,443<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other long-term assets</a></td>
<td class="nump">7,417<span></span>
</td>
<td class="nump">6,721<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNoncurrent', window );">Total long-term assets</a></td>
<td class="nump">699,692<span></span>
</td>
<td class="nump">606,834<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,429,891<span></span>
</td>
<td class="nump">1,260,392<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtCurrent', window );">Short-term debt and current portion of long-term debt</a></td>
<td class="nump">6,156<span></span>
</td>
<td class="nump">427<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Trade accounts payable and accrued expenses</a></td>
<td class="nump">178,854<span></span>
</td>
<td class="nump">127,228<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsPayableCurrent', window );">Dividends payable</a></td>
<td class="nump">6,675<span></span>
</td>
<td class="nump">6,730<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liability &#8211; current portion</a></td>
<td class="nump">173,825<span></span>
</td>
<td class="nump">149,442<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">392,655<span></span>
</td>
<td class="nump">351,746<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrentAbstract', window );"><strong>Long-term liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income taxes</a></td>
<td class="nump">28,181<span></span>
</td>
<td class="nump">22,404<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Contract liability &#8211; non-current</a></td>
<td class="nump">1,045<span></span>
</td>
<td class="nump">1,988<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt</a></td>
<td class="nump">219,238<span></span>
</td>
<td class="nump">171,202<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrent', window );">Total long-term liabilities</a></td>
<td class="nump">248,464<span></span>
</td>
<td class="nump">195,594<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">641,119<span></span>
</td>
<td class="nump">547,340<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>SHAREHOLDERS&#8217; EQUITY</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred shares, $0.0001 par value, 1,000,000 shares authorized, 0 shares issued and outstanding at June 30, 2026, and December 31, 2025 respectively</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Ordinary shares, $0.0001 par value, 100,000,000 shares authorized, 46,389,046 shares issued, and 44,364,716 shares outstanding at June 30, 2026; and, 46,389,146 shares issued, and 44,737,726 shares outstanding at December 31, 2025</a></td>
<td class="nump">5<span></span>
</td>
<td class="nump">5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury stock</a></td>
<td class="num">(95,679)<span></span>
</td>
<td class="num">(79,218)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_LegalReserves', window );">Legal Reserves</a></td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">153,353<span></span>
</td>
<td class="nump">153,358<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">713,697<span></span>
</td>
<td class="nump">670,558<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive (loss)</a></td>
<td class="nump">15,938<span></span>
</td>
<td class="num">(33,109)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Shareholders&#8217; equity attributable to controlling interest</a></td>
<td class="nump">788,772<span></span>
</td>
<td class="nump">713,052<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders&#8217; equity</a></td>
<td class="nump">1,429,891<span></span>
</td>
<td class="nump">1,260,392<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember', window );">Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Due from related parties</a></td>
<td class="nump">2,075<span></span>
</td>
<td class="nump">2,002<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Other current liabilities</a></td>
<td class="nump">8,895<span></span>
</td>
<td class="nump">10,881<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember', window );">Nonrelated Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Other current liabilities</a></td>
<td class="nump">$ 18,250<span></span>
</td>
<td class="nump">$ 57,038<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_LegalReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Legal reserves.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_LegalReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 27: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 35: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNoncurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalent. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 860<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (b)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481420/860-30-50-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (01)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of debt and lease obligation, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-4<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-6<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 740<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478064/805-740-55-13<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 39<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-39<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482598/350-20-45-1<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of finite- and indefinite-lived intangible assets and capitalized cost for software to be sold, leased, or marketed. Excludes goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 28: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 26: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 24: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance, of receivables classified as other, due within one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (01)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated depreciation, depletion, and amortization, of property, plant, and equipment. Includes, but is not limited to, land and land improvement; building; machinery and equipment; furniture and fixture; and work of art, historical treasure, or similar asset classified as collection.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478443/942-360-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480339/815-10-65-8<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480339/815-10-65-8<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480339/815-10-65-8<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 860<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481229/860-50-50-5<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-8<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-8<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 35: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 36: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(3)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-24<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-23<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-5<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (h)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 53: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 54: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 55: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 56: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 57: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 58: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 59: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 60: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 61: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 62: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 63: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 64: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-3<br><br>Reference 65: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 66: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 67: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 68: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 69: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 70: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 71: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-15<br><br>Reference 72: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-16<br><br>Reference 73: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4I<br><br>Reference 74: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-1<br><br>Reference 75: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481108/505-30-30-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred shares, par value</a></td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred shares, shares authorized</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="nump">1,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred shares, shares issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred shares, shares outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Ordinary shares, par value</a></td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Ordinary shares, shares authorized</a></td>
<td class="nump">100,000,000<span></span>
</td>
<td class="nump">100,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Ordinary shares, shares issued</a></td>
<td class="nump">46,389,046<span></span>
</td>
<td class="nump">46,389,146<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ordinary shares, shares outstanding</a></td>
<td class="nump">44,364,716<span></span>
</td>
<td class="nump">44,737,726<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Operating revenues:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total operating revenues</a></td>
<td class="nump">$ 295,291<span></span>
</td>
<td class="nump">$ 255,546<span></span>
</td>
<td class="nump">$ 544,303<span></span>
</td>
<td class="nump">$ 477,834<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="num">(185,257)<span></span>
</td>
<td class="num">(141,211)<span></span>
</td>
<td class="num">(338,435)<span></span>
</td>
<td class="num">(265,974)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">110,034<span></span>
</td>
<td class="nump">114,335<span></span>
</td>
<td class="nump">205,868<span></span>
</td>
<td class="nump">211,860<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingExpense', window );">Selling expense</a></td>
<td class="num">(45,081)<span></span>
</td>
<td class="num">(29,730)<span></span>
</td>
<td class="num">(67,981)<span></span>
</td>
<td class="num">(53,347)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expense</a></td>
<td class="num">(28,409)<span></span>
</td>
<td class="num">(23,405)<span></span>
</td>
<td class="num">(56,402)<span></span>
</td>
<td class="num">(42,260)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="num">(73,490)<span></span>
</td>
<td class="num">(53,135)<span></span>
</td>
<td class="num">(124,383)<span></span>
</td>
<td class="num">(95,607)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_OtherOperatingIncomeLoss', window );">Other Operating income</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">4<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">4,280<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">36,544<span></span>
</td>
<td class="nump">61,204<span></span>
</td>
<td class="nump">81,485<span></span>
</td>
<td class="nump">120,533<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingGainsLosses', window );">Non-operating income, net</a></td>
<td class="nump">644<span></span>
</td>
<td class="nump">588<span></span>
</td>
<td class="nump">1,500<span></span>
</td>
<td class="nump">1,604<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_EquityMethodIncome', window );">Equity method (loss) income</a></td>
<td class="num">(231)<span></span>
</td>
<td class="nump">942<span></span>
</td>
<td class="num">(129)<span></span>
</td>
<td class="nump">2,286<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign currency transactions gains</a></td>
<td class="nump">5,213<span></span>
</td>
<td class="nump">847<span></span>
</td>
<td class="nump">6,130<span></span>
</td>
<td class="nump">338<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_InterestExpenseAndDeferredCostOfFinancing', window );">Interest expense, net and deferred cost of financing</a></td>
<td class="num">(3,520)<span></span>
</td>
<td class="num">(1,350)<span></span>
</td>
<td class="num">(6,543)<span></span>
</td>
<td class="num">(2,681)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before taxes</a></td>
<td class="nump">38,650<span></span>
</td>
<td class="nump">62,231<span></span>
</td>
<td class="nump">82,443<span></span>
</td>
<td class="nump">122,080<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax provision</a></td>
<td class="num">(14,095)<span></span>
</td>
<td class="num">(18,148)<span></span>
</td>
<td class="num">(25,997)<span></span>
</td>
<td class="num">(35,808)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 24,555<span></span>
</td>
<td class="nump">$ 44,083<span></span>
</td>
<td class="nump">$ 56,446<span></span>
</td>
<td class="nump">$ 86,272<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic income per share</a></td>
<td class="nump">$ 0.55<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 1.27<span></span>
</td>
<td class="nump">$ 1.84<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted income per share</a></td>
<td class="nump">$ 0.55<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 1.27<span></span>
</td>
<td class="nump">$ 1.84<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding</a></td>
<td class="nump">44,364,801<span></span>
</td>
<td class="nump">46,988,155<span></span>
</td>
<td class="nump">44,497,265<span></span>
</td>
<td class="nump">46,989,650<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding</a></td>
<td class="nump">44,364,801<span></span>
</td>
<td class="nump">46,988,155<span></span>
</td>
<td class="nump">44,497,265<span></span>
</td>
<td class="nump">46,989,650<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAbstract', window );"><strong>Other comprehensive income:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustments</a></td>
<td class="nump">$ 35,693<span></span>
</td>
<td class="nump">$ 13,260<span></span>
</td>
<td class="nump">$ 48,905<span></span>
</td>
<td class="nump">$ 32,836<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Change in fair value of investments available for sale and derivative contracts</a></td>
<td class="num">(50)<span></span>
</td>
<td class="nump">785<span></span>
</td>
<td class="nump">142<span></span>
</td>
<td class="nump">148<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income</a></td>
<td class="nump">35,643<span></span>
</td>
<td class="nump">14,045<span></span>
</td>
<td class="nump">49,047<span></span>
</td>
<td class="nump">32,984<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest', window );">Total Comprehensive income</a></td>
<td class="nump">60,198<span></span>
</td>
<td class="nump">58,128<span></span>
</td>
<td class="nump">105,493<span></span>
</td>
<td class="nump">119,256<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=TGLS_ExternalCustomersMember', window );">External Customers [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Operating revenues:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total operating revenues</a></td>
<td class="nump">294,571<span></span>
</td>
<td class="nump">254,145<span></span>
</td>
<td class="nump">542,962<span></span>
</td>
<td class="nump">475,417<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember', window );">Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Operating revenues:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total operating revenues</a></td>
<td class="nump">$ 720<span></span>
</td>
<td class="nump">$ 1,401<span></span>
</td>
<td class="nump">$ 1,341<span></span>
</td>
<td class="nump">$ 2,417<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_EquityMethodIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity method income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_EquityMethodIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_InterestExpenseAndDeferredCostOfFinancing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Interest expense and deferred cost of financing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_InterestExpenseAndDeferredCostOfFinancing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_OtherOperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Other operating income loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_OtherOperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-11<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481839/830-10-45-17<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (o)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 17: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 32: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 53: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingGainsLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of gains or losses resulting from nonoperating activities (for example, interest and dividend revenue, property, plant and equipment impairment loss, and so forth).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingGainsLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of other comprehensive income (loss) attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expenses recognized in the period that are directly related to the selling and distribution of products or services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-25<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-19<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-12<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 35<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-35<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=TGLS_ExternalCustomersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=TGLS_ExternalCustomersMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>CASH FLOWS FROM OPERATING ACTIVITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 56,446<span></span>
</td>
<td class="nump">$ 86,272<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Allowance for credit losses</a></td>
<td class="nump">1,322<span></span>
</td>
<td class="nump">987<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">21,367<span></span>
</td>
<td class="nump">16,479<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxesAndTaxCredits', window );">Deferred income taxes</a></td>
<td class="nump">5,009<span></span>
</td>
<td class="nump">2,002<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity method income</a></td>
<td class="nump">129<span></span>
</td>
<td class="num">(2,286)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets1', window );">Gain on disposal of assets</a></td>
<td class="nump">487<span></span>
</td>
<td class="num">(4,254)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_DeferredCostOfFinancing', window );">Deferred cost of financing</a></td>
<td class="nump">307<span></span>
</td>
<td class="nump">556<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_RealizedGainOnDerivativeInstruments', window );">Realized gain on derivative instruments</a></td>
<td class="nump">1,181<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossUnrealized', window );">Unrealized currency translation gains</a></td>
<td class="num">(15,956)<span></span>
</td>
<td class="num">(8,718)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNoncashIncomeExpense', window );">Other non-cash adjustments</a></td>
<td class="nump">31<span></span>
</td>
<td class="nump">391<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Trade accounts receivable</a></td>
<td class="num">(32,334)<span></span>
</td>
<td class="num">(20,376)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(35,818)<span></span>
</td>
<td class="num">(23,996)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="num">(2,691)<span></span>
</td>
<td class="num">(2,529)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="nump">19,953<span></span>
</td>
<td class="num">(3,248)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Trade accounts payable and accrued expenses</a></td>
<td class="nump">31,340<span></span>
</td>
<td class="nump">21,802<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Taxes payable</a></td>
<td class="num">(39,160)<span></span>
</td>
<td class="num">(18,513)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities', window );">Labor liabilities</a></td>
<td class="num">(1,810)<span></span>
</td>
<td class="nump">87<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities', window );">Other liabilities</a></td>
<td class="nump">178<span></span>
</td>
<td class="nump">15<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities', window );">Contract assets and liabilities</a></td>
<td class="nump">3,668<span></span>
</td>
<td class="nump">21,387<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDueToRelatedParties', window );">Related parties</a></td>
<td class="num">(2,533)<span></span>
</td>
<td class="num">(1,298)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">CASH PROVIDED BY OPERATING ACTIVITIES</a></td>
<td class="nump">11,116<span></span>
</td>
<td class="nump">64,760<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>CASH FLOWS FROM INVESTING ACTIVITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital', window );">Dividends received</a></td>
<td class="nump">2,257<span></span>
</td>
<td class="nump">8,914<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Business acquisition</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(6,841)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Purchase of investments</a></td>
<td class="num">(600)<span></span>
</td>
<td class="num">(73)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Sale of property and equipment</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">12,312<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Acquisition of property and equipment</a></td>
<td class="num">(52,662)<span></span>
</td>
<td class="num">(62,939)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">CASH USED IN INVESTING ACTIVITIES</a></td>
<td class="num">(51,005)<span></span>
</td>
<td class="num">(48,627)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>CASH FLOWS FROM FINANCING ACTIVITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDividends', window );">Cash dividend</a></td>
<td class="num">(13,364)<span></span>
</td>
<td class="num">(14,095)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfEquity', window );">Share repurchases</a></td>
<td class="num">(16,466)<span></span>
</td>
<td class="num">(339)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Proceeds from debt</a></td>
<td class="nump">63,810<span></span>
</td>
<td class="nump">3,613<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfDebt', window );">Repayments of debt</a></td>
<td class="num">(15,731)<span></span>
</td>
<td class="num">(4,103)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">CASH PROVIDED BY (USED IN) FINANCING ACTIVITIES</a></td>
<td class="nump">18,249<span></span>
</td>
<td class="num">(14,924)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Effect of exchange rate changes on cash and cash equivalents</a></td>
<td class="nump">1,553<span></span>
</td>
<td class="nump">1,816<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">NET (DECREASE) INCREASE IN CASH AND CASH EQUIVALENTS</a></td>
<td class="num">(20,087)<span></span>
</td>
<td class="nump">3,025<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">CASH AND CASH EQUIVALENTS - Beginning of period</a></td>
<td class="nump">100,901<span></span>
</td>
<td class="nump">134,882<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">CASH AND CASH EQUIVALENTS - End of period</a></td>
<td class="nump">80,814<span></span>
</td>
<td class="nump">137,907<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest</a></td>
<td class="nump">4,698<span></span>
</td>
<td class="nump">3,343<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income Tax</a></td>
<td class="nump">51,609<span></span>
</td>
<td class="nump">47,360<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>NON-CASH INVESTING AND FINANCING ACTIVITIES:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfAssetsAcquired', window );">Assets acquired under credit or debt</a></td>
<td class="nump">9,778<span></span>
</td>
<td class="nump">7,663<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_AccountPayableForBusinessAcquisition', window );">Account payable for business acquisition</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 3,588<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_AccountPayableForBusinessAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Account payable for business acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_AccountPayableForBusinessAcquisition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_DeferredCostOfFinancing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred cost of financing</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_DeferredCostOfFinancing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_RealizedGainOnDerivativeInstruments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Realized gain on derivative instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_RealizedGainOnDerivativeInstruments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including effect from exchange rate change and including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxesAndTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) and income tax credits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxesAndTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate change on cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; held in foreign currency; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 830<br> -SubTopic 230<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfAssetsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The fair value of assets acquired in noncash investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueOfAssetsAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossUnrealized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of unrealized gain (loss) from foreign currency transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-6<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossUnrealized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnDispositionOfAssets1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) for proportionate share of equity method investee's income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481664/323-10-45-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the assets (liabilities) created through trading commodity-based derivative instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDueToRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of obligations to be paid to the following types of related parties: a parent company and its subsidiaries; subsidiaries of a common parent; an entity and trust for the benefit of employees, such as pension and profit-sharing trusts that are managed by or under the trusteeship of the entities' management; an entity and its principal owners, management, or member of their immediate families; affiliates; or other parties with the ability to exert significant influence.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDueToRelatedParties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activity, including, but not limited to, discontinued operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activity, including, but not limited to, discontinued operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, property, plant, and equipment, and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activity, including, but not limited to, discontinued operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 32: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 53: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNoncashIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNoncashIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividends">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividends</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the purchase of all investments (debt, security, other) during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of distribution received from equity method investee for return of investment, classified as investing activities. Excludes distribution for return on investment, classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 21D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-21D<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for short-term and long-term debt. Excludes payment of lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Treasury Stock, Common [Member]</div></th>
<th class="th"><div>Additional Paid-in Capital [Member]</div></th>
<th class="th"><div>Legal Reserves [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>AOCI Attributable to Parent [Member]</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2024</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 192,094<span></span>
</td>
<td class="nump">$ 1,458<span></span>
</td>
<td class="nump">$ 538,787<span></span>
</td>
<td class="num">$ (101,161)<span></span>
</td>
<td class="nump">$ 631,183<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Dec. 31, 2024</a></td>
<td class="nump">46,991,558<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividend ($0.15 per share)</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(7,050)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(7,050)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Foreign currency translation</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">19,576<span></span>
</td>
<td class="nump">19,576<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">42,189<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">42,189<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Share Repurchase</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(124)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(124)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Share Repurchase, shares</a></td>
<td class="num">(1,610)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Derivative financial instruments</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(637)<span></span>
</td>
<td class="num">(637)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2025</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">191,970<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">573,926<span></span>
</td>
<td class="num">(82,222)<span></span>
</td>
<td class="nump">685,137<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Mar. 31, 2025</a></td>
<td class="nump">46,989,948<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2024</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">192,094<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">538,787<span></span>
</td>
<td class="num">(101,161)<span></span>
</td>
<td class="nump">631,183<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Dec. 31, 2024</a></td>
<td class="nump">46,991,558<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Derivative financial instruments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">148<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2025</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">191,755<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">610,960<span></span>
</td>
<td class="num">(68,177)<span></span>
</td>
<td class="nump">736,001<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Jun. 30, 2025</a></td>
<td class="nump">46,987,148<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2025</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">191,970<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">573,926<span></span>
</td>
<td class="num">(82,222)<span></span>
</td>
<td class="nump">685,137<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Mar. 31, 2025</a></td>
<td class="nump">46,989,948<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividend ($0.15 per share)</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(7,049)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(7,049)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Foreign currency translation</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">13,260<span></span>
</td>
<td class="nump">13,260<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">44,083<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">44,083<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Share Repurchase</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(215)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(215)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Share Repurchase, shares</a></td>
<td class="num">(2,800)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Derivative financial instruments</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">785<span></span>
</td>
<td class="nump">785<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2025</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">191,755<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">610,960<span></span>
</td>
<td class="num">(68,177)<span></span>
</td>
<td class="nump">736,001<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Jun. 30, 2025</a></td>
<td class="nump">46,987,148<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2025</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="num">$ (79,218)<span></span>
</td>
<td class="nump">153,358<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">670,558<span></span>
</td>
<td class="num">(33,109)<span></span>
</td>
<td class="nump">713,052<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Dec. 31, 2025</a></td>
<td class="nump">46,389,146<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock balance, shares at Dec. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,651,420<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividend ($0.15 per share)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(6,652)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(6,652)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Share Repurchase</a></td>
<td class="text"> <span></span>
</td>
<td class="num">$ (16,461)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(16,461)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Share Repurchase, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">372,910<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts', window );">Change in fair value of investments available for sale and derivative contracts</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">192<span></span>
</td>
<td class="nump">192<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Foreign currency translation</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">13,212<span></span>
</td>
<td class="nump">13,212<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">31,891<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">31,891<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2026</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="num">$ (95,679)<span></span>
</td>
<td class="nump">153,358<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">695,797<span></span>
</td>
<td class="num">(19,705)<span></span>
</td>
<td class="nump">735,234<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Mar. 31, 2026</a></td>
<td class="nump">46,389,146<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock balance, shares at Mar. 31, 2026</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,024,330<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2025</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="num">$ (79,218)<span></span>
</td>
<td class="nump">153,358<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">670,558<span></span>
</td>
<td class="num">(33,109)<span></span>
</td>
<td class="nump">713,052<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Dec. 31, 2025</a></td>
<td class="nump">46,389,146<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock balance, shares at Dec. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,651,420<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Share Repurchase</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 16,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Share Repurchase, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">372,910<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Derivative financial instruments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">142<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2026</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="num">$ (95,679)<span></span>
</td>
<td class="nump">153,353<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">713,697<span></span>
</td>
<td class="nump">15,938<span></span>
</td>
<td class="nump">788,772<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Jun. 30, 2026</a></td>
<td class="nump">46,389,046<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock balance, shares at Jun. 30, 2026</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,024,330<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2026</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="num">$ (95,679)<span></span>
</td>
<td class="nump">153,358<span></span>
</td>
<td class="nump">1,458<span></span>
</td>
<td class="nump">695,797<span></span>
</td>
<td class="num">(19,705)<span></span>
</td>
<td class="nump">735,234<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Mar. 31, 2026</a></td>
<td class="nump">46,389,146<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock balance, shares at Mar. 31, 2026</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,024,330<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStock', window );">Dividend ($0.15 per share)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(6,655)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(6,655)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Foreign currency translation</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">35,693<span></span>
</td>
<td class="nump">35,693<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">24,555<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">24,555<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Share Repurchase</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(5)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(5)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Share Repurchase, shares</a></td>
<td class="num">(100)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale', window );">Change in fair value of investments available for sale</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(50)<span></span>
</td>
<td class="num">(50)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Derivative financial instruments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(50)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2026</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="num">$ (95,679)<span></span>
</td>
<td class="nump">$ 153,353<span></span>
</td>
<td class="nump">$ 1,458<span></span>
</td>
<td class="nump">$ 713,697<span></span>
</td>
<td class="nump">$ 15,938<span></span>
</td>
<td class="nump">$ 788,772<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance, shares at Jun. 30, 2026</a></td>
<td class="nump">46,389,046<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock balance, shares at Jun. 30, 2026</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,024,330<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Change in fair value of investments available for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Other comprehensive income loss change in fair value of investments available for sale and derivative contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid common stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 40: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4J<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4J<br><br>Reference 44: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481108/505-30-30-6<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Mar. 31, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Dividend per share</a></td>
<td class="nump">$ 0.15<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pay vs Performance Disclosure - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_PvpTable', window );"><strong>Pay vs Performance Disclosure [Table]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income (Loss)</a></td>
<td class="nump">$ 24,555<span></span>
</td>
<td class="nump">$ 44,083<span></span>
</td>
<td class="nump">$ 56,446<span></span>
</td>
<td class="nump">$ 86,272<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_PvpTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 402<br> -Subsection v<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_PvpTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 32: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 53: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Insider Trading Arrangements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_InsiderTradingArrLineItems', window );"><strong>Insider Trading Arrangements [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_Rule10b51ArrAdoptedFlag', window );">Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_NonRule10b51ArrAdoptedFlag', window );">Non-Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_Rule10b51ArrTrmntdFlag', window );">Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_NonRule10b51ArrTrmntdFlag', window );">Non-Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_InsiderTradingArrLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_InsiderTradingArrLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_NonRule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_NonRule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_Rule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_Rule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_Rule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_Rule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>General<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock', window );">General</a></td>
<td class="text"><p id="xdx_805_eus-gaap--OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_zrS0XKDxICVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
1. <span id="xdx_82C_zeFH3oOi0IDf">General</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Tecnoglass
Holdings Inc., a Florida corporation (the &#8220;Company&#8221;, &#8220;Tecnoglass&#8221;, &#8220;we&#8221;, &#8220;us&#8221; or &#8220;our&#8221;)
manufactures hi-specification, architectural glass and windows for the global residential and commercial construction industries. Currently
the Company offers design, production, marketing, and installation of architectural systems for buildings of high, medium and low elevation
size. Products include windows and doors in glass, aluminum, and vinyl, office partitions and interior divisions, floating facades and
commercial window showcases. The Company sells to customers in North, Central and South America, and exports more than 97% of its production
to foreign countries.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company manufactures glass, aluminum, and vinyl products. Its glass products include tempered glass, laminated glass, thermo-acoustic
glass, curved glass, silk-screened glass, acoustic glass and digital print glass. Its Alutions plant produces mill finished, anodized,
painted aluminum profiles and rods, tubes, bars and plates. Alutions&#8217; operations include extrusion, smelting, painting and anodizing
processes, and exporting, importing and marketing aluminum products. Its newly installed vinyl assembling lines manufacture and distributes
cutting-edge vinyl windows for new and existing customers.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company also designs, manufactures, markets and installs architectural systems for high, medium and low-rise construction, glass, aluminum
and vinyl windows and doors, office dividers and interiors, floating facades and commercial display windows.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company was originally incorporated in 2013 in the Cayman Islands as Andina Acquisition Corporation and later changed its name to Tecnoglass
Inc. in connection with a business combination between Tecnoglass subsidiaries C.I. Energia Solar S.A. E.S. Windows (&#8220;ES&#8221;)
and Tecnglass S.A. (&#8220;TG&#8221;) and Andina Acquisition Corporation. Effective July 7, 2026, Tecnoglass Inc. completed a change
of jurisdiction of incorporation from the Cayman Islands to the State of Florida through a transaction known as a continuation under
Section 206 of the Companies Act (as amended) of the Cayman Islands and Section 607.11920 of the Florida Business Corporation Act (the
&#8220;Continuation&#8221;). The Continuation became effective on July 7, 2026 upon the Company&#8217;s registration with the State of
Florida and the concurrent de-registration application of the Company in the Cayman Islands. As part of the Continuation, the Company&#8217;s
name was changed to Tecnoglass Holdings Inc.</span></p>

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.4-03(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480922/205-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480424/946-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480424/946-10-50-2<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/810/tableOfContent<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481034/205-10-S45-5<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/205/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Basis of Presentation and Summary of Significant Accounting Policies</a></td>
<td class="text"><p id="xdx_808_eus-gaap--SignificantAccountingPoliciesTextBlock_zFZLOL7iSP54" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
2. <span id="xdx_82C_zpLhVrjMenp8">Basis of Presentation and Summary of Significant Accounting Policies</span></b></span></p>

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

<p id="xdx_842_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zbEmYlFw8EP1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86E_zmQdi6Vc4Lga">Basis
of Presentation and Use of Estimates</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally
accepted in the United States of America (&#8220;US GAAP&#8221;) and pursuant to the accounting and disclosure rules and regulations
of the Securities and Exchange Commission (&#8220;SEC&#8221;) for interim reporting purposes. The results reported in these unaudited
condensed consolidated financial statements are not necessarily indicative of results that may be expected for the entire year. These
unaudited condensed consolidated financial statements should be read in conjunction with the information contained in the Company&#8217;s
Annual Report on Form 10-K for the year ended December 31, 2025. The year-end condensed balance sheet data was derived from the audited
financial statements in the Annual Report on Form 10-K but does not include all disclosures required by US GAAP.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of these unaudited condensed consolidated financial statements requires the Company to make estimates and judgments that
affect the reported amounts of assets and liabilities, revenues and expenses, and related disclosures of contingent assets and liabilities
at the date of the Company&#8217;s financial statements. Actual results may differ from these estimates under different assumptions and
conditions. Estimates utilized in the preparation of these unaudited condensed consolidated financial statements relate to the collectability
of account receivables, the valuation of inventories, estimated earnings on uncompleted contracts, useful lives and potential impairment
of long-lived assets. Changes in estimates are reflected in the periods during which they become known. Actual amounts may differ from
these estimates and could differ materially. These financial statements reflect all adjustments that in the opinion of management are
necessary for a fair statement of the financial position, results of operations and cash flows for the period presented, and are of a
normal, recurring nature.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has one operating segment, Architectural Glass and Windows, which is also its reporting segment. The segment comprises the design,
manufacturing, distribution, marketing and installation of high-specification architectural glass and window products sold to residential
and commercial markets.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
chief operating decision maker (&#8220;CODM&#8221;) assesses performance and decides how to allocate resources based on gross profit
and net income that also is reported on the income statement as consolidated net income, cash flows from operations which are reported
on the consolidated statement of cash flows, along with certain non-G.A.A.P metrics. Significant segment expenses include cost of sales,
selling expense, and general and administrative expenses. Other segment items included in consolidated net income are interest expense,
other expense, net and the provision for income taxes, which are reflected in the condensed consolidated statements of operations and
other comprehensive income. These metrics are used to monitor budgeted versus actual results, and competitive analysis by benchmarking
to the Company&#8217;s competitors. The Company&#8217;s CODM are the Company&#8217;s Chief Executive Officer and Chief Operating Officer
acting together as a group.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company performs intra-entity sales and transfers within its single segment comprised of several vertically integrated processes including
its main manufacturing operations in Colombia and distribution and installation in the United States. The Company considers its operations
to be a single reporting segment because it only produces architectural glass and window systems to serve similar markets in a vertically
integrated platform.</span></p>

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

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



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

<p id="xdx_84D_eus-gaap--ConsolidationPolicyTextBlock_zRtmrbFGKsod" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_864_zd5tORF7wbfe">Principles
of Consolidation</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
unaudited consolidated financial statements consolidate Tecnoglass, its subsidiaries TG, ES, ES Windows LLC (&#8220;ESW LLC&#8221;),
Tecnoglass LLC, Tecno RE LLC, Tecnoglass Armour, LLC, GM&amp;P Consulting and Glazing Contractors (&#8220;GM&amp;P&#8221;), Componenti
USA LLC, ES Metals SAS (&#8220;ES Metals&#8221;), Ventanas Solar S.A (&#8220;VS&#8221;), which are entities in which we have a controlling
financial interest because we hold a majority voting interest. To determine if we hold a controlling financial interest in an entity,
we first evaluate if we are required to apply the variable interest entity (&#8220;VIE&#8221;) model to the entity, otherwise the entity
is evaluated under the voting interest model. All significant intercompany accounts and transactions are eliminated in consolidation,
including unrealized intercompany profits and losses. The equity method of accounting is used for investments in affiliates and other
joint ventures over which the Company has significant influence but does not have effective control.</span></p>

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

<p id="xdx_842_eus-gaap--DerivativesPolicyTextBlock_zHY21XXkZs3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86D_zsDn1hOuWUug">Derivative
Financial Instruments</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes all derivative financial instruments as either assets or liabilities at fair value on the condensed consolidated balance
sheet. The unrealized gains or losses arising from changes in fair value of derivative instruments that are designated and qualify as
cash flow hedges, are recorded in the condensed consolidated statement of comprehensive income. Amounts in accumulated other comprehensive
loss on the condensed consolidated balance sheet are reclassified into the condensed consolidated statement of income in the same period
or periods during which the hedged transactions are settled.</span></p>

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

<p id="xdx_84C_eus-gaap--ExtendedProductWarrantyPolicy_zUX3zI3TekQ9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_zj26imsZYbxc">Product
Warranties</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_eus-gaap--StandardProductWarrantyDescription_c20260101__20260630_zvQenju0X9L2" title="Product warranties description">The
Company offers product warranties in connection with the sale and installation of its products that are competitive in the markets in
which the products are sold. Standard warranties vary based upon the product and service offered and durations are generally from five
to ten years for architectural glass, curtain wall, laminated and tempered glass, window and door products.</span> Warranties are not priced
or sold separately and do not provide the customer with services or coverages in addition to the assurance that the product complies
with original agreed-upon specifications. Claims are settled by replacement of the warrantied products. The Company records a liability
for estimated future warranty costs at the time of sale based on historical claims data and projected revenues. This liability is reassessed
periodically based on updated claims experience and revenue projections.</span></p>

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

<p id="xdx_890_eus-gaap--ScheduleOfProductWarrantyLiabilityTableTextBlock_zlP2fhss76wi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes in the product warranty liability for the six months ended June 30, 2026, are:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zTvqIZrikBmb" style="display: none">Schedule
of Product Warranty Liability</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_494_20260101__20260630_zzNKflqq1Ifi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20250101__20250630_zhCm0PRRTKT8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iS_pn3n3_znjD6g3tfZ31" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Balance at beginning of period</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">363</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0762">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--StandardProductWarrantyAccrualWarrantiesIssued_pn3n3_zTTjhMO6YE96" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Accruals for product warranties issued during period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">550</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">570</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--StandardProductWarrantyAccrualPayments_iN_pn3n3_di_zWPvdmPUf28h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Reductions for payments made under product warranties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(610</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(279</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iE_pn3n3_zcfkKXnHHTmh" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance at end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">303</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">291</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_84F_ecustom--RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_zSNDGwu1GL3a" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_869_zaIx1sfiyFwa">Recovery
of Previously Paid Import Tariffs</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three months ended March 31, 2026, the Company recorded $<span id="xdx_905_ecustom--RecoveryOfPreviouslyPaidImportTariffs_pn3n3_c20260101__20260331_zcqGbBcSij8c" title="Recovery of previously paid import tariffs">1,876</span> of recoveries associated with import tariffs on certain products imported
to the United States under the International Emergency Economic Powers Act (&#8220;IEEPA&#8221;) paid in 2025 and the first quarter of
2026. In February 2026, the U.S. Supreme Court ruled that certain tariffs imposed under the IEEPA were not valid, and in March 2026,
the Court of International Trade ruled that U.S. Customs and Border Protection was required, subject to applicable procedures, to refund
IEEPA tariffs that had been collected. The Company filed reimbursement claims with U.S. Customs and Border Protection, which were accepted
on April 20, 2026 and reimbursement was received in July, 2026. These recoveries relate to previous year and current period imports for
which eligibility for refund was subsequently established. The Company recognized the recovery in the period in which realization became
probable and reasonably estimable as a reduction to selling expenses on the Condensed Consolidated Statement of Operations.</span></p>

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

<p id="xdx_84A_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z7uUoNXYp8Kj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86B_zK9uuZOnU9Zc">Recently
Issued Accounting Pronouncements</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
November 2024, the FASB issued ASU 2024-03 &#8220;Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation
Disclosures (Subtopic 220-40)&#8221;. The Board is issuing this Update to improve the disclosures about a public business entity&#8217;s
expenses and address requests from investors for more detailed information about the types of expenses (including purchases of inventory,
employee compensation, depreciation, amortization, and depletion) in commonly presented expense captions (such as cost of sales, SG&amp;A,
and research and development). The amendments in this Update are effective for annual reporting periods beginning after December 15,
2026, and interim reporting periods beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating
the potential effect of this ASU on its consolidated financial statements</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
December 2025, the FASB issued ASU 2025-11 &#8220;Interim Reporting (Topic 270)&#8221;. The Board is issuing amendments in this Update
to improve the guidance in Topic 270, Interim Reporting, by improving the navigability of the required interim disclosures and clarifying
when that guidance is applicable. The amendments also provide additional guidance on what disclosures should be provided in interim reporting
periods. The amendments in this Update are effective for interim reporting periods within annual reporting periods beginning after December
15, 2027, for public business entities and for interim reporting periods within annual reporting 3 periods beginning after December 15,
2028, for entities other than public business entities. Early adoption is permitted for all entities. The Company is currently evaluating
the potential effect of this ASU on its interim consolidated financial statements</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
November 2025, the FASB issued ASU 2025-09 &#8220;Derivative and Hedging (Topic 815)&#8221;. Consistent with the original objective of
Update 2017-12, the objective of this Update is to more closely align hedge accounting with the economics of an entity&#8217;s risk management
activities. The amendments included in the five issues addressed in this Update are intended to better reflect those strategies in financial
reporting by enabling entities to achieve and maintain hedge accounting for highly effective economic hedges of forecasted transactions.
The five issues addressed are: Issue 1: Similar Risk Assessment for Cash Flow Hedges, Issue 2: Hedging Forecasted Interest Payments on
Choose-Your-Rate Debt Instruments, Issue 3: Cash Flow Hedges of Nonfinancial Forecasted Transactions, Issue 4: Net Written Options as
Hedging Instruments and Issue 5: Foreign-Currency-Denominated Debt Instrument as Hedging Instrument and Hedged Item (Dual Hedge). For
public business entities, the amendments in this Update are effective for annual reporting periods beginning after December 15, 2026,
and interim periods within those annual reporting periods. The Company is currently evaluating the potential effect of this ASU on its
consolidated financial statements.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
September 2025, the FASB issued ASU 2025-06 &#8220;Intangibles-Goodwill and other-Internal-Use Software (Subtopic 350-40)&#8221;. The
Board is issuing this Update to modernize the accounting for software costs that are accounted for under Subtopic 350-40, Intangibles&#8212;Goodwill
and Other&#8212;Internal-Use Software (referred to as &#8220;internal-use software&#8221;). Feedback from preparer and practitioner stakeholders
on the 2021 FASB Invitation to Comment, Agenda Consultation, indicated that the accounting for software costs should be a top priority
for the Board. Considering this feedback, the Board decided to make targeted improvements to Subtopic 350-40 to increase the operability
of the recognition guidance considering different methods of software development. The amendments in this Update are effective for all
entities for annual reporting periods beginning after December 15, 2027, and interim reporting periods 4 within those annual reporting
periods. Early adoption is permitted as of the beginning of an annual reporting period. The Company is currently evaluating the potential
effect of this ASU on its consolidated financial statements.</span></p>

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

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



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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/235/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract', window );"><strong>Business Combination, Asset Acquisition, Transaction between Entities under Common Control, and Joint Venture Formation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Acquisitions</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--BusinessCombinationDisclosureTextBlock_zay3KL92w4N8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
3. <span id="xdx_82F_zpXY331xm7i6">Acquisitions</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
April 3, 2025, Tecnoglass acquired certain assets and assumed liabilities of Florida-based Continental Glass Systems, LLC., a premier
provider of innovative architectural glass and glazing solutions in the Southeast U.S., to create wholly owned Contiglass Asset Acquisition,
LLC (&#8220;Contiglass). This acquisition included a manufacturing plant, various intangibles, and a substantial project backlog in both
execution and pipeline phases. This transaction is considered a business combination under U.S. GAAP. Continental&#8217;s production
capabilities, high-quality product portfolio, and reputation for excellence strengthens Tecnoglass&#8217; U.S. market presence, broadens
its client reach, and creates synergies that reinforce Tecnoglass&#8217; leadership position in the architectural glass industry. Additionally,
the Company anticipates operational benefits as it integrates Continental&#8217;s supply chains into its existing manufacturing operations.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
purchase price for the acquisition was $<span id="xdx_909_eus-gaap--BusinessCombinationPriceOfAcquisitionExpected_pn3n3_c20250403__20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zXBYz13a5Su1" title="Purchase price for acquisition">10,429</span>, of which $<span id="xdx_90C_eus-gaap--BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_iI_pn3n3_c20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zO3VRR2P1iPg" title="Cash paid in acquisition">6,588</span> of the purchase price was paid in cash by the Company on April 3, 2025.
Post-acquisition working capital adjustment of $<span id="xdx_903_ecustom--WorkingCapitalAdjustment_iI_pn3n3_c20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zOjCtIxUMya3" title="Working capital adjustment">253</span> was paid 45 days after transaction closing date, with the remaining amount to be
payable by the Company in cash within 365 days after closing date, subsequently extended. The total amount of acquisition-related costs
was $<span id="xdx_902_eus-gaap--BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_iI_pn3n3_c20250630_zSIEDpoBdX51" title="Acquisition-related costs">588</span>, which are included within general and administrative expenses in the Statement of operations during the second quarter of 2025.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
total consideration transferred was $<span id="xdx_905_eus-gaap--BusinessCombinationPriceOfAcquisitionExpected_pn3n3_c20250403__20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zDDcsaK4ANq4" title="Purchase price for acquisition">10,429</span>. Under ASC 805, a company can apply measurement period adjustments during the twelve-month
period after the date of acquisition. During this period, the acquirer may adjust preliminary amounts recognized at the acquisition date
to their subsequently determined final fair values. The allocation of the consideration transferred was based on management&#8217;s judgment
after evaluation of several factors, including a preliminary valuation assessment. The adjustment period ended on April 3, 2026.</span></p>

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

<p id="xdx_89E_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zvbP8SSBwZn8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the purchase price allocation of the total consideration transferred:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zYcHFEAfGZU3" style="display: none">Schedule
of Purchase Price Allocation Consideration Transferred</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold">Consideration Transferred:</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Total purchase price</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_pn3n3_c20260101__20260630_zjP6750rIIye" style="width: 16%; text-align: right" title="Total purchase price">10,429</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold">Recognized amounts of identifiable assets acquired and liabilities assumed:</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20260630__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember_ztKDiCL1h5tc" style="border-bottom: Black 1pt solid; text-align: center">Preliminary<br/>
 Purchase<br/>
 Price<br/>
 Allocation</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260630__srt--RestatementAxis__srt--RevisionOfPriorPeriodReclassificationAdjustmentMember_zV6MEDdmNz89" style="border-bottom: Black 1pt solid; text-align: center">Measurement<br/>
 Period<br/>
 Adjustments</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260630_zQsXFEEZBIfg" style="border-bottom: Black 1pt solid; text-align: center">Adjusted<br/>
 Purchase<br/>
 Price<br/>
 Allocation</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pn3n3_znYefwClbKl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash and equivalents</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0795">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0796">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0797">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_pn3n3_zBHTHkbsf3Hk" style="vertical-align: bottom; background-color: White">
    <td style="width: 52%; text-align: left">Accounts Receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">4,814</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0800">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">4,814</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_pn3n3_zAMMc7NFsTF1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other Current Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">585</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0804">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">585</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_pn3n3_ziU0wsWXlLPd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Property, plant, and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">826</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0808">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">826</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_iI_pn3n3_ztTg17U7N4p9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Trade Name</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">170</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0812">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">170</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_iI_pn3n3_zOYNKy2thvU8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract Backlog</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">670</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0816">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">670</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_iI_pn3n3_znaucc7zkVi7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptance and FBC permits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,260</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0820">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,260</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iI_pn3n3_zv7AqmO8Vi45" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Right-of-use assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,192</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(555</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">637</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pn3n3_di_zWDIb2Fkzvo6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Account payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(2,890</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0828">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(2,890</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_iI_pn3n3_zvzMbeStHU6e" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Accrued expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(81</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0832">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(81</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_iI_pn3n3_zz0qhELdTuL6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Service revenue deposit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(518</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">94</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(424</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_iI_pn3n3_zc4AAZAkjHme" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Lease liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,229</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">580</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(649</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_iI_pn3n3_z26G52jgV1b2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Billings in excess of cost and profit</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,987</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0844">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,987</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iTI_pn3n3_zBtw5vgxTAce" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Total identifiable net assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">3,812</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">119</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">3,931</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_pn3n3_zBhlthppEaw2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Goodwill</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">6,617</td><td style="font-weight: bold; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(119</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">6,498</td><td style="text-align: left">&#160;</td></tr>
  </table>


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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
excess of the consideration transferred over the estimated fair values of assets acquired and liabilities assumed were recorded as goodwill.
The identifiable intangible asset subject to amortization was the tradename, backlog of projects, and certain Notice of Acceptance and
Florida Building Code permits, which have a remaining useful life of <span id="xdx_907_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_iI_dtY_c20260630__srt--RangeAxis__srt--MinimumMember_zjWifEjdtjB5" style="display: none" title="Intangible asset, finite-lived, useful life">2</span>two to <span id="xdx_901_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_iI_dc_c20260630__srt--RangeAxis__srt--MaximumMember_zoVzPQi8CQNb" title="Intangible asset, finite-lived, useful life">five years</span>. See &#8220;Note 6 &#8211; Goodwill and Intangible
Assets&#8221; for additional information.</span></p>

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAndAssetAcquisitionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for business combination.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 38<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-38<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 46<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-46<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 43<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-43<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 45<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-45<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 29<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-29<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 29<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-29<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-5<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-4<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-4<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479326/805-40-45-1<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/805-30/tableOfContent<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/805-20/tableOfContent<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-5<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/805-10/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories, net<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories, net</a></td>
<td class="text"><p id="xdx_805_eus-gaap--InventoryDisclosureTextBlock_zkkNHN4LDgMc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
4. - <span id="xdx_820_zMquiwWzXxzf">Inventories, net</span></b></span></p>

<p id="xdx_899_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_z5gPgIy7lEIe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zAcvYPwPZzM6" style="display: none">Schedule of Inventories</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zAaUQgR6n373" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30, <br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20251231_z82EcYzyKmRa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31, <br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--InventoryRawMaterials_iI_pn3n3_maIGzzds_zuu6CJGzNYY" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Raw materials</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">201,805</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">152,174</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InventoryWorkInProcess_iI_pn3n3_maIGzzds_zxprYBe7L70l" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Work in process</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">31,268</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">27,467</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--InventoryFinishedGoods_iI_pn3n3_maIGzzds_zVvzASOSglil" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Finished goods</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,325</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,222</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--OtherInventoriesSpareParts_iI_pn3n3_maIGzzds_zZwEdqsixlk5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Spares and accessories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">33,437</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">28,662</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--InventoryPackingMaterialGross_iI_pn3n3_maIGzzds_zXHB9z6162S1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Packing material</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,384</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,439</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InventoryGross_iTI_pn3n3_mtIGzzds_maINzh7N_zPCNvAd5jBwc" style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total Inventories, gross</span></td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">272,219</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">213,964</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InventoryValuationReserves_iNI_pn3n3_di_msINzh7N_zqlLQgzvdhK1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Less: Inventory allowance</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(624</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(440</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pn3n3_mtINzh7N_zuLpBCNV2eo1" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total inventories, net</span></td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">271,595</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">213,524</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

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



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

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Operating revenues:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities</a></td>
<td class="text"><p id="xdx_801_eus-gaap--RevenueFromContractWithCustomerTextBlock_zShFnIC9nCz9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
5. &#8211; <span id="xdx_821_zdlGpYnPpaya">Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities</span></b></span></p>

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

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

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

<p id="xdx_895_eus-gaap--DisaggregationOfRevenueTableTextBlock_zsC3zsQ1pnmg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company disaggregates its sales with customers by revenue recognition method for its <span id="xdx_900_eus-gaap--NumberOfReportableSegments_uSegment_c20260101__20260630_z6ICEuJJ27c7" style="display: none" title="Number of reportable segment">1</span>only segment, as the Company believes these factors
affect nature, amount, timing and uncertainty of the Company&#8217;s revenue and cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_ziFRdLhQyVU6" style="display: none">Schedule
of Disaggregation by Revenue</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_zn8aG6GqW9F9" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_z2jG2OAONSs2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_z7kVs0v4gvKf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_zjlA39fWrX8c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--FixedPriceContractsMember_z4CXt8Dzjch4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Fixed price contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">79,645</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">61,228</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">155,753</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">114,202</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ProductSalesMember_zf1YjCCrnCn6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Product sales</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">215,646</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">194,318</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">388,550</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">363,632</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_zw8Sg9JecUy6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">295,291</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">255,546</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">544,303</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">477,834</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>


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

<p id="xdx_893_eus-gaap--ScheduleOfSegmentReportingInformationBySegmentTextBlock_hus-gaap--StatementBusinessSegmentsAxis__us-gaap--ReportableSegmentAggregationBeforeOtherOperatingSegmentMember_zLROoDif4zG3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents revenues broken down by geographical location:</span></p>

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

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_z3KO7z92R3gc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_znX09XTqZ01c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_zWP1NOFzGNga" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_z3rZBeMkzlSa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--CO_z5EmpHrky3J" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Colombia</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">6,154</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">6,621</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">13,673</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">13,035</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--US_zrio2RGQcPY" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">286,242</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">242,347</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">523,382</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">454,801</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__custom--OtherMember_zN4M3ML5NENg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Other</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,895</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">6,578</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">7,248</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">9,998</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z43kKRDNiWl3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">295,291</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">255,546</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">544,303</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">477,834</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_89E_ecustom--ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_zVLhPcVI6SM5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents revenues broken down by market:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zT6LyzY1fQOf" style="display: none">Schedule
of Revenues Distribution By End Market</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_zVr9I0TmHxVi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_zGJFHwY5Rl8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_zTG1cC6P8iV5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_zU371M67Az06" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ResidentialMember_z5vUE3sCNST1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Residential</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">126,499</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">109,598</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">214,969</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">198,527</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--CommercialMember_zg19wcpVOyf4" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">Commercial</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">168,792</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">145,948</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">329,334</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">279,307</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z2HsdPptAFp4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">295,291</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">255,546</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">544,303</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">477,834</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we extend credit to customers on a generally non-collateralized basis. The Company maintains an allowance
for expected credit losses which is based on management&#8217;s assessments of the amount which may become uncollectible in the future
and is determined through consideration of our write-off history, specific identification of uncollectible accounts based in part on
the customer&#8217;s past due balance (based on contractual terms), and consideration of prevailing economic and industry conditions.
Uncollectible accounts are written off after repeated attempts to collect from the customer have been unsuccessful.</span></p>

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

<p id="xdx_890_eus-gaap--ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_zSvMX8cghHh9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trade
accounts receivable consists of the following:</span></p>

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

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zaAWCVWwsc99" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zrSnZg4Bs25j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--AccountsReceivableGrossCurrent_iI_pn3n3_maARNCzXOy_zXoZOzT3LGyd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1pt">Short-term trade accounts receivable</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1pt solid; width: 16%; text-align: right">292,134</td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1pt solid; width: 16%; text-align: right">243,768</td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iNI_pn3n3_di_msARNCzXOy_zYbgDK9d8rrh" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: Allowance for credit losses</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(4,668</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(4,320</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--AccountsReceivableNetCurrent_iI_pn3n3_maARNzS1d_mtARNCzXOy_zHLWhw1T7gTa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total short-term trade accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">287,466</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">239,448</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--AccountsReceivableNetNoncurrent_iI_pn3n3_maARNzS1d_z2SOL2Ji4Ujf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Long term trade accounts</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">1,887</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">1,730</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AccountsReceivableNet_iTI_pn3n3_mtARNzS1d_zaCGkQorRvH7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt">Total trade accounts receivable</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">289,353</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">241,178</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_897_ecustom--ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_zuSlLAAmYblb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes in the allowance for credit losses for the six months ended June 30, 2026, are:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_zNTpXnNhc3ca" style="display: none">Schedule of Changes in Allowance for Doubtful Accounts Receivable</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_490_20260101__20260630_z06WByG6mhqa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months&#160;ended<br/> June 30,
    2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iS_pn3n3_zUzZfrsMmKpc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 75%">Balance at beginning of period</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 21%; text-align: right">4,320</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--ProvisionForDoubtfulAccounts_pn3n3_zF6EvfGDASv6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Provisions for credit losses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,322</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--AllowanceForDoubtfulAccountsReceivableWriteOffs_iN_pn3n3_di_zLWFDfPsf2V1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Deductions and write-offs, net of foreign currency adjustment</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(974</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iE_pn3n3_zfOE7D8BUJd9" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance at end of period</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">4,668</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Contract
assets represent accumulated incurred costs and earned profits on contracts with customers that have been recorded as sales but have
not been billed to customers and are classified as current. In addition, a portion of the amounts billed on certain fixed price contracts
that are withheld by the customer as a retainage until a final good receipt of the complete project to the customers satisfaction. Contract
liabilities consist of advance payments and billings in excess of costs incurred and deferred revenue, and represent amounts received
in excess of sales recognized on contracts. The Company classifies advance payments and billings in excess of costs incurred as current,
and deferred revenue as current or non-current based on the expected timing of sales recognition. Contract assets and contract liabilities
are determined on a contract-by-contract basis at the end of each reporting period. The non-current portion of contract liabilities is
included in long-term liabilities in the Company&#8217;s condensed consolidated balance sheets.</span></p>

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

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



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

<p id="xdx_89C_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zZeip9VBkFt2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below presents the components of net contract assets (liabilities):</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zVPZPUl2E1f1" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zZ8ERCuI3CU7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zf8Edftfkl0j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_maNCLAzcHD_zAoEhWnXvHgb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Contract assets &#8212; current</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">29,701</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">31,809</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_maNCLAzcHD_z96nqdKFt8wi" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract assets &#8212; non-current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">28,414</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">20,506</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerLiabilityCurrent_iNI_pn3n3_di_msNCLAzcHD_zUMZTTxkYmN" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Contract liabilities &#8212; current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(173,825</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(149,442</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iNI_pn3n3_di_msNCLAzcHD_z7ljzYOSQgU4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract liabilities &#8212; non-current</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(1,045</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(1,988</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_402_ecustom--NetContractLiabilitiesAssets_iTI_pn3n3_mtNCLAzcHD_zD8p6lZuEsQ6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net contract liability</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(116,755</td><td style="font-weight: bold; text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(99,115</td><td style="font-weight: bold; text-align: left">)</td></tr>
  </table>

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

<p id="xdx_891_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractAssetsMember_zhQ7MUHsYUbl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of contract assets are presented in the table below:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_z8kWXE9QDAok" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zoUBiGy3HgLi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zgcXC8WjluF7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--UnbilledReceivablesCurrent_iI_pn3n3_maCWCAGz5IH_zrD2TyXex3qh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Unbilled contract receivables, gross</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">6,421</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">9,084</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--ConstructionContractorReceivableRetainage_iI_pn3n3_maCWCAGz5IH_zy3ea9V6YIC" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">Retainage</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">51,694</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">43,231</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ContractWithCustomerAssetGrossCurrent_iTI_pn3n3_mtCWCAGz5IH_zcJ9weFsqgol" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Total contract assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">58,115</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">52,315</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_ziQ2lf9forwa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: current portion</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">29,701</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">31,809</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_zoSiol6Aq68g" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Contract Assets &#8211; non-current</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">28,414</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">20,506</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_89E_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractLiabilitiesMember_zFpKlaO5PLok" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of contract liabilities are presented in the table below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zGUCqnDUtWIj" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_ziRGyuM3YwEh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zO6Dg5g3EsGh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_401_ecustom--BillingsInExcessOfCosts_iI_pn3n3_zccOCan23m5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Billings in excess of costs</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">122,407</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">104,376</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms_iI_pn3n3_zNkZz0xWejM3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Advances from customers on uncompleted contracts</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">52,463</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">47,054</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ContractWithCustomerLiability_iTI_pn3n3_zQyaKNqiIDWj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Total contract liabilities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">174,780</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">151,430</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--ContractWithCustomerLiabilityCurrent_iI_pn3n3_zWF9p2jHZEre" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: current portion</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">173,825</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">149,442</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iI_pn3n3_z1ztisJRlDfb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Contract liabilities &#8211; non-current</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,045</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,988</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three and six months ended June 30, 2026, the Company recognized $<span id="xdx_900_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20260401__20260630_zI9G6FvPrwZ1" title="Sales related to contract liabilities">11,336</span> and $<span id="xdx_902_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20260101__20260630_zcl9ysheQ3S9" title="Sales related to contract liabilities">23,274</span> of sales related to its contract liabilities
on January 1, 2026, respectively. During the three and six months ended June 30, 2025, the Company recognized $<span id="xdx_90B_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20250401__20250630_zcvbQQxfw6Nh" title="Sales related to contract liabilities">10,314</span> and $<span id="xdx_900_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20250101__20250630_zyRgxscuehBc" title="Sales related to contract liabilities">16,858</span> of
sales related to its contract liabilities on January 1, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the Company had $<span id="xdx_900_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20260630_z09KrEvpFav3" title="Remaining performance obligation">884.2</span> million of remaining performance obligations, which represents the transaction price of firm
orders minus sales recognized from inception to date. Remaining performance obligations exclude unexercised contract options, verbal
commitments, Letters of Intent or written mandates, and potential orders under basic ordering agreements. The Company expects to recognize
<span id="xdx_90D_eus-gaap--RevenueRemainingPerformanceObligationPercentage_iI_pid_dp_uPure_c20260630_zkIEiDjCH2y7" title="Performance obligation, percentage">100</span>% of sales relating to existing performance obligations within three years, of which $<span id="xdx_90D_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20261231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zVCeEYDvPNxk" title="Remaining performance obligation">309.2</span> million are expected to be recognized
during the year ending December 31, 2026, $<span id="xdx_902_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20271231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zMDAZjQXKJ1i" title="Remaining performance obligation">409.8</span> million during the year ending December 31, 2027, and $<span id="xdx_90B_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20281231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zSu7Le6sE2K7" title="Remaining performance obligation">165.2</span> million during the year
ending December 31, 2028.</span></p>

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

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



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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-15<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets and Goodwill<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Asset, Goodwill and Other [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Intangible Assets and Goodwill</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--IntangibleAssetsDisclosureTextBlock_zZHm4LIRVTue" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
6. <span id="xdx_82B_zPh5XTaFUJWb">Intangible Assets and Goodwill</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets include Miami-Dade County Notices of Acceptances (NOA&#8217;s), which are certificates issued for approved products and required
to market hurricane-resistant glass in Florida. Intangibles assets also include the intangibles acquired during the acquisition of Continental.</span></p>

<p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zJEtlT6afeGg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zgPqPWQP47U6" style="display: none">Schedule
of Finite-Lived Intangible Assets, Net</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30, 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Gross</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Acc. Amort.</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Net</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Trade Names</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z3l7t0AkAre4" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross">170</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z03FerkIl98a" style="width: 12%; text-align: right" title="Accumulated Amortization">(50</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zKown4y1hhFl" style="width: 12%; text-align: right" title="Intangible assets, net">120</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Software and licenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zVU9uK6uFXdc" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">20,171</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zCyRpRBlTM1a" style="text-align: right" title="Accumulated Amortization">(11,326</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z1UjXtWGHmJ3" style="text-align: right" title="Intangible assets, net">8,845</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptances (NOAs), product designs and other intellectual property</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zMKzdVlqBoic" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">6,260</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zn4pRrSwNhxd" style="text-align: right" title="Accumulated Amortization">(1,826</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zppZY0Ycb2Gd" style="text-align: right" title="Intangible assets, net">4,434</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract Backlog</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_z6kxqXAHwYga" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross">670</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_ztsOolILwJOc" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization">(261</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zMEzQmVhbGN2" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net">409</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 1pt">Total</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630_zJocKqTQvUb3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Gross">27,271</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630_z2fnNRIGFtE3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Accumulated amortization">(13,463</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630_zgjVUUU7eLD3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Net">13,808</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31, 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Gross</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Acc. Amort.</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Net</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Trade Names</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zxBdjQeM9fP7" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross">170</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zK0QQZjfwQW4" style="width: 12%; text-align: right" title="Accumulated Amortization">(28</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zGmvYsyRWuv3" style="width: 12%; text-align: right" title="Intangible assets, net">142</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Software and licenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zWvOi1i7CdMe" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">17,217</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z7Qvkk0NnEqj" style="text-align: right" title="Accumulated Amortization">(10,138</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zDl4omBQPRO8" style="text-align: right" title="Intangible assets, net">7,079</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptances (NOAs), product designs and other intellectual property</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zzWE20t4BOuh" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">6,260</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zemG0a6RpqJ8" style="text-align: right" title="Accumulated Amortization">(1,043</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zh664U8T6lyb" style="text-align: right" title="Intangible assets, net">5,217</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract Backlog</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zebUkhamiKl4" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross">670</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zmSON1bHG1w7" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization">(149</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zYXuNTS0kx5k" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net">521</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 1pt">Total</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231_zPUY59nSLvfc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Gross">24,317</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231_zoylhdMoerOe" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Accumulated amortization">(11,358</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231_z0U6rPUqYo26" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Net">12,959</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
weighted average amortization period is <span id="xdx_90C_eus-gaap--AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_dtY_c20260101__20260630_z3kpxZEXVJ2" title="Weighted average amortization period">2.9</span> years.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three and six months ended June 30, 2026, the amortization expense amounted to $<span id="xdx_904_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20260401__20260630_zLEeMVI87Ssb" title="Amortization expense">974</span> and $<span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20260101__20260630_z6Gy3gZ3BCs7" title="Amortization expense">1883</span>, respectively, and was included within
the general and administration expenses in our unaudited Condensed Consolidated Statement of Operations. Similarly, during the three
and six ended June 30, 2025, the amortization expense amounted to $<span id="xdx_905_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20250401__20250630_z05FjjMLj6K4" title="Amortization expense">645</span> and $<span id="xdx_90F_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20250101__20250630_zo4ij6dVAhpj" title="Amortization expense">950</span>, respectively.</span></p>

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

<p id="xdx_898_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zgsekQ8ROY1k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
estimated aggregate amortization expense for each of the five succeeding years as of June 30, 2026, is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B1_zYIzH0kotrj" style="display: none">Schedule
of Finite Lived Intangible Assets Future Amortization Expense</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Year ending December 31,</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_497_20260630_zcet4z2JRQJ4">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_iI_pn3n3_maFLIANz7hA_zxaJIsiZodok" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: center">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">2,079</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pn3n3_maFLIANz7hA_z64P5znWSvY3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,706</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pn3n3_maFLIANz7hA_zz6fU66FWiza" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,257</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pn3n3_maFLIANz7hA_zmD0V24KrTj5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,890</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_iI_pn3n3_maFLIANz7hA_zQiFSNevhO6b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1pt">Thereafter</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,876</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_pn3n3_mtFLIANz7hA_z7o5FlORlrd2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center; padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">13,808</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for intangible asset. Includes, but is not limited to, finite- and indefinite-lived intangible assets, capitalized cost for internal-use software and software to be sold, leased, or marketed. Excludes goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-30/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/985-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Supplier Finance Program<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplierFinanceProgramTextBlock', window );">Supplier Finance Program</a></td>
<td class="text"><p id="xdx_804_eus-gaap--SupplierFinanceProgramTextBlock_z5J5dKrUc4lk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
7. <span id="xdx_821_zQQ6hs0hhia3">Supplier Finance Program</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Tecnoglass
has established payment times to suppliers for the purchase of goods and services, which normally range between 30 and 60 days. In the
normal course of business, suppliers may require liquidity and manage, through third parties, the advanced payment of invoices. The Company
allows its suppliers the option to payments in advance of an invoice due date, through a third-party finance provider or intermediary,
with the purpose of allowing suppliers to obtain the required liquidity. For these purposes, suppliers present to Tecnoglass. the third-party
finance provider or intermediary with whom they will carry out the finance program and establish an agreement, through which the invoices
will be paid by the third-party finance provider or intermediary once Tecnoglass. has confirmed the invoices as valid. Once the Company
confirms the invoices are valid, the third-party finance provider or intermediary proceeds with the payment to the supplier. Subsequently,
Tecnoglass. pays the invoices for goods or services to the third-party finance provider or intermediary selected by the supplier. Payment
times do not vary from those initially agreed with the supplier, as stated in the invoices factored by the supplier (i.e. between 30
and 60 days). Pursuant to the supplier finance programs, the Company has not been required to pledge any assets as security nor to provide
any guarantee to third-party finance provider or intermediary.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the obligations outstanding related to the supplier finance program amounted to $<span id="xdx_907_eus-gaap--ProgramRightsObligationsCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember_zipgirXujzT5" title="Current liabilities">21,686</span>, recorded as current liabilities,
in the following balance sheet lines: Trade accounts payable and accrued expenses $<span id="xdx_90D_eus-gaap--AccountsPayableAndAccruedLiabilitiesCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember_zw42jX6vHlE3" title="Trade accounts payable and accrued expenses">21,000</span> &amp; due to related parties $<span id="xdx_909_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z7FfVOjtfZFk" title="Due to related parties">686</span>.</span></p>

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

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



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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplierFinanceProgramTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for supplier finance program.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-50/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479468/405-50-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479468/405-50-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479468/405-50-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477128/405-50-55-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplierFinanceProgramTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Debt</a></td>
<td class="text"><p id="xdx_809_eus-gaap--DebtDisclosureTextBlock_zoPRihiHX3ae" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
8. <span id="xdx_821_z63VGBErlsp6">Debt</span></b></span></p>

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

<p id="xdx_89D_eus-gaap--ScheduleOfDebtTableTextBlock_zqroHGjSV2Zb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s debt is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zUAMA1IoEP13" style="display: none">Schedule
of Long Term Debt</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20260630_zBrwsD09L7C4" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2026</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20251231_zPCw4xNhWhLe" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2025</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LineOfCredit_iI_pn3n3_maDICAz25p_zfDvXXBSUxak" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Revolving lines of credit</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">596</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">387</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--FinanceLeaseDebt_iI_pn3n3_maDICAz25p_zQrd7r0fvOl7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Finance lease</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,941</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">41</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--OtherLongTermDebtCurrent_iI_pn3n3_maDICAz25p_zJSuht5VM5U4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other current debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,628</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1150">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--SeniorSecuredCreditFacility_iI_pn3n3_maDICAz25p_zFCpW5VmIm9f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Senior Secured Credit Facility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">219,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">174,000</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredCostsCurrent_iNI_pn3n3_di_msDICAz25p_z7iX7LuTVuwf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Less: Deferred cost of financing</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,771</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,799</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--DebtInstrumentCarryingAmount_iTI_pn3n3_mtDICAz25p_zOpTgQg8J8o9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Total obligations under borrowing arrangements</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">225,394</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">171,629</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebtCurrent_iI_pn3n3_zm5L7pvndEFk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Less: Current portion of long-term debt and other current borrowings</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,156</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">427</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zQxvtU6anWL3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Long-term debt</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">219,238</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">171,202</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
September 2025, the Company entered into a new Senior Secured Credit Facility, transitioning from a term loan and revolving facility
structure to a fully committed revolving facility structure which allowed the Company to (i) increase total committed borrowing capacity
from $<span id="xdx_901_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__srt--RangeAxis__srt--MinimumMember_zFNj7oG07T19" title="Line of credit facility, maximum borrowing capacity">150</span> million to $<span id="xdx_90A_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__srt--RangeAxis__srt--MaximumMember_z1Fm7qfpNlIl" title="Line of credit facility, maximum borrowing capacity">500</span> million, (ii) reduce borrowing costs by approximately 25 basis points, and (iii) <span id="xdx_905_eus-gaap--DebtInstrumentMaturityDateDescription_c20250901__20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zlUn6yBJ33xa" title="Extend initial maturity">extend the initial maturity
date by five years to December 2030</span>. Borrowings under the new facility bear interest at the Secured Overnight Financing Rate (SOFR) with
no floor, plus a spread of <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_dp_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_zk2GgA17kW03" title="Debt instrument interest rate effective percentage">1.25</span> % based on the Company&#8217;s net leverage ratio (previously <span id="xdx_909_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_dp_c20240930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_zfKBge0laGYl" title="Debt instrument interest rate effective percentage">1.50</span> % over SOFR). The effective interest
rate for the facility, including deferred issuance costs, is <span id="xdx_908_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_pid_dp_uPure_c20251231__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zrDjavuw3tAb" title="Debt instrument interest rate effective percentage">6.98</span> % as of December 31, 2025. The Company incurred total costs and fees
of $<span id="xdx_905_eus-gaap--PaymentsOfDebtIssuanceCosts_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zAzEIzI4kLK1" title="Cost and fees">2,783</span> in lender fees which were capitalized as deferred financing costs, and are presented as a deduction from the related debt liability.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
transaction was accounted for as a debt extinguishment under ASC 470-50. Accordingly, the prior term-loan and revolving credit facilities
were derecognized, and the new revolving facility was initially recognized at its principal amount, net of deferred financing costs.
As a result, the Company recognized a loss on extinguishment of debt of $<span id="xdx_905_eus-gaap--GainsLossesOnExtinguishmentOfDebt_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zy5Zu1Sf440a" title="Loss on extinguishment of debt">1,354</span>, representing $<span id="xdx_903_eus-gaap--WriteOffOfDeferredDebtIssuanceCost_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zs6wW6M2s9a4" title="Write-off of the remaining unamortized">1,302</span> for the write-off of the remaining
unamortized deferred financing costs related to the prior term-loan and revolving credit facilities, and $<span id="xdx_909_ecustom--TerminationCosts_iI_pn3n3_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zF7DuvtkiV87" title="Termination costs">52</span> of termination costs associated
with closing the prior facility. Cash proceeds from the new facility and repayments of the extinguished debt are reflected within financing
activities in the condensed consolidated statements of cash flows. Of the $<span id="xdx_905_eus-gaap--LegalFees_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zLjtg91xWSXl" title="Cost and fees">2,783</span> of total fees incurred, $<span id="xdx_903_ecustom--DeductedFromProceedsFromIssuanceOfDebt_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zHYfYbv2cW1h" title="Deducted from proceeds from debt">1,803</span> were deducted from the
gross proceeds and presented net within &#8220;Proceeds from debt,&#8221; with the remaining $<span id="xdx_902_eus-gaap--DeferredFinanceCostsNoncurrentNet_iI_pn3n3_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zTlWJZtRLl6d" title="Deferred financing costs">980</span> recorded as cash outflows classified
under &#8220;Deferred financing costs and debt issuance fees&#8221; within financing activities. During the six months ended June 30,
2026, the Company drew down $<span id="xdx_904_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zeXNosJs2Sue" title="Line of credit facility, maximum borrowing capacity">60</span> million from its revolving credit facility and repaid $<span id="xdx_902_eus-gaap--RepaymentsOfDebt_pn6n6_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zE2Hcw7aljKj" title="Repayment of debt">15</span> million.</span></p>

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

<p id="xdx_895_ecustom--ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_zSptocCGhae8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Interest
income (expense), net and deferred cost of financing is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_z8vdT2WE77Zk" style="display: none">Schedule
of Interest Income Expenses net and deferred cost</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260401__20260630_zcVHem3o8NPb" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20250401__20250630_zVXBRh38ofH2" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20260101__20260630_zlGnmU86udy2" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20250101__20250630_zUg2JWZ9t7n3" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Interest income (expense), net and deferred cost of financing:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InterestExpense_zaRt1R0lv1L7" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Interest expense</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(3,429</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(1,078</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(5,957</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(2,126</td><td style="width: 1%; text-align: left">)</td></tr>
  <tr id="xdx_405_ecustom--DeferredCostsOfFinancing_pn3n3_zFvOzCfn0f13" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred cost of financing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(155</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(272</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(307</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(555</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40B_ecustom--DerivativeFinancialInstrumentGain_pn3n3_zUtkCx1oGbkb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Derivative financial instrument loss</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">64</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1210">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(279</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1212">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--InterestIncomeExpenseNetAndDeferredCostOfFinancing_pn3n3_zCyfhwPssEu" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Interest expense, net and deferred cost of financing:</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(3,520</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(1,350</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(6,543</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(2,681</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr>
  </table>

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

<p id="xdx_89B_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zzUeOdw9MFh3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Maturities
of long-term debt and other current borrowings as of June 30, 2026, are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B6_zsvW6Jt2HlAf" style="display: none">Schedule
of Maturities of Long Term Debt</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_493_20260630_zXarcZsz5imh" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pn3n3_maLTDz5iw_z6Anyjgfa8O5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: center">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">6,156</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pn3n3_maLTDz5iw_z4XZ9VHLuvvj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">953</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pn3n3_maLTDz5iw_zpE5uMoL9Eel" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">848</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pn3n3_maLTDz5iw_zHpXBDOYxhJe" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">769</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_iI_pn3n3_maLTDz5iw_zyZ6FV50IIZh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1pt">2030</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">219,439</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebt_iTI_pn3n3_mtLTDz5iw_zEgtsOiRKiQd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center; padding-bottom: 2.5pt">Total</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">228,165</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s loans have maturities ranging from <span id="xdx_902_eus-gaap--DebtInstrumentMaturityDateDescription_c20260101__20260630_zfkJnw2DL4K3" title="Loan maturity period description">several weeks to 5 years</span>. Our credit facilities bore a weighted average interest rate
of <span id="xdx_903_eus-gaap--DebtWeightedAverageInterestRate_iI_pid_dp_uPure_c20260630_zRnBefXa0Ol6" title="Debt, weighted average interest rate">5.14</span>% as of June 30, 2026.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the Company had right-of-use assets (&#8220;ROU assets&#8221;) of $<span id="xdx_90A_eus-gaap--FinanceLeaseRightOfUseAsset_iI_pn3n3_c20260630_zh1lPIhz4Mch" title="Right-of-use assets">3,905</span> included within Property, Plant and Equipment,
and lease liabilities of $<span id="xdx_903_ecustom--FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_iI_pn3n3_c20260630_zNlJqJBlATMh" title="Finance lease right of use asset included property, plant and equipment, and lease liabilities">3,941</span> on its Condensed Consolidated Balance Sheet, of which $<span id="xdx_902_ecustom--FinanceLeaseShortTermDebt_iI_pn3n3_c20260630_zKT5wAdzY0k" title="Finance lease, short-term debt">932</span> is presented within short-term debt and current
portion of long-term debt and $<span id="xdx_906_ecustom--FinanceLeaseLongTermDebt_iI_pn3n3_c20260630_zJyaXfJHMO3l" title="Finance lease, long-term debt">3,009 </span>is classified as long-term debt. These leases primarily relate to real estate, including showrooms,
office space and industrial warehouses, as well as computing equipment. Certain lease agreements include options to extend the lease
term; however, the Company does not consider these options reasonably certain of exercise.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes amortization of ROU assets and interest expense on lease liabilities in its Condensed Consolidated Statements of Income.
During the three and six months ended June 30, 2026, the Company recorded ROU asset amortization of $<span id="xdx_90A_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_pn3n3_c20260401__20260630_zKizE0iXHTD1" title="ROU asset amortization">306</span>, and $<span id="xdx_905_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_pn3n3_c20260101__20260630_zOEROls5Mvte" title="ROU asset amortization">564</span>, respectively; and
interest expense of $<span id="xdx_902_eus-gaap--FinanceLeaseInterestExpense_pn3n3_c20260401__20260630_zn9koH9xWrud" title="Interest expense">43</span>, and $<span id="xdx_909_eus-gaap--FinanceLeaseInterestExpense_pn3n3_c20260101__20260630_z1A4OwQ3t881" title="Interest expense">68</span>, respectively.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cash
paid for amounts included in the measurement of lease liabilities was $<span id="xdx_903_eus-gaap--FinanceLeasePrincipalPayments_pn3n3_c20260101__20260630_zeBJqx4e7xE7" title="Cash paid for amounts included in the measurement of lease liabilities">702 </span>for the six months ended June 30, 2026, consisting of $<span id="xdx_90D_ecustom--FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_pn3n3_c20260101__20260630_zUuKCnNcL7F1" title="Cash paid for amounts included in measurement of lease liabilities classified as operating cash flows">68</span>
classified as operating cash flows and $<span id="xdx_906_ecustom--FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_pn3n3_c20260101__20260630_zIOY0tDtUQIf" title="Cash paid for amounts included in measurement of lease liabilities classified as financing cash flows">634</span> classified as financing cash flows. Non-cash additions to ROU assets in exchange for lease
liabilities were $<span id="xdx_906_ecustom--NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_iI_pn3n3_c20260630_zWDqc8WB5JX1" title="Non-cash additions to ROU assets in exchange for lease liabilities">3,073</span> during the period.</span></p>

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

<p id="xdx_899_eus-gaap--FinanceLeaseLiabilityMaturityTableTextBlock_z7a8ivTHQip" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Future
minimum lease payments for the years ended June 30, of each year are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zKECQKN054Oh" style="display: none">Schedule of Future Minimum Lease Payments</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_49B_20260630_zQQZ7DEYBikh" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pn3n3_zWBhkFopt9g2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">1,078</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearTwo_iI_pn3n3_zhrEp3LZ9gv7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,060</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearThree_iI_pn3n3_z6tmBx8N7AVj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">917</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearFour_iI_pn3n3_z3Gl9HXjabKl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">804</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--FinanceLeaseLiabilityPaymentsDueAfterYearFour_iI_pn3n3_zjJajX02UxC9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">2030 and thereafter</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">446</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--FinanceLeaseLiabilityPaymentsDue_iTI_pn3n3_z4SBllCmOa59" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Total undiscounted cashflows</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,304</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--FinanceLeaseLiabilityUndiscountedExcessAmount_iI_pn3n3_z2VnQPwvzcpa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Less: Imputed Interest</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">363</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--FinanceLeaseLiability_iTI_pn3n3_zcb1X4lTuAq3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Present value of lease liability</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,941</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the weighted-average remaining lease term for finance leases was <span id="xdx_901_eus-gaap--FinanceLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20260630_z1EaGXWZYQhc" title="Weighted-average remaining lease term">4.1</span> years and the weighted-average discount rate was
<span id="xdx_908_eus-gaap--FinanceLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20260630_zxxUrJ0AVp08" title="Weighted-average discount rate">4.2</span>%.</span></p>

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

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



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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 24: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/470/tableOfContent<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Financial Instruments and Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock', window );">Derivative Financial Instruments and Fair Value Measurements</a></td>
<td class="text"><p id="xdx_800_eus-gaap--DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_zjoBOi5NM3k4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
9. <span id="xdx_823_zIn8aovPMp7d">Derivative Financial Instruments and Fair Value Measurements</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the quarter ended June 30, 2022, we entered into several interest rate swap contracts to hedge the interest rate fluctuations related
to our outstanding debt. The effective date of the contract is December 31, 2022 and, as a result, the Company has payment dates each
quarter, commencing June 30 2023. During the quarter ended December 31, 2024, we entered into several foreign currency non-delivery option
contracts to hedge the fluctuations in the exchange rate between the Colombian Peso and the U.S. Dollar. Our contracts are designated
as cash flow hedges since they are highly effective in offsetting changes in the cash flows attributable to forecasted LIBOR and Colombian
Peso denominated costs and expenses, respectively.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
record our hedge contracts at fair value and consider our credit risk for contracts in a liability position, and our counter-party&#8217;s
credit risk for contracts in an asset position, in determining fair value. We assess our counter-party&#8217;s risk of non-performance
when measuring the fair value of financial instruments in an asset position by evaluating their financial position, including cash on
hand, as well as their credit ratings.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Due
to the Libor discontinuation, on June 21, 2023, the Company amended the Interest Rate Swap contract from Libor 1 Month plus spread to
SOFR 3 Months plus spread. The settlements of the instruments remain under the existing conditions; however, the fixed leg goes from
<span id="xdx_904_eus-gaap--DerivativeFixedInterestRate_iI_dp_uPure_c20230621__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember__srt--RangeAxis__srt--MaximumMember_zAdjXAhK6t49" title="Derivative fixed interest rate">1.93</span>% to <span id="xdx_905_eus-gaap--DerivativeFixedInterestRate_iI_dp_uPure_c20230621__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember__srt--RangeAxis__srt--MinimumMember_zh3LyJZarQnl" title="Derivative fixed interest rate">1.87</span>%. Regarding the conditions of our outstanding debt, only Libor was replaced by SOFR, maintaining the other initial conditions.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
September 04, 2025 Tecnoglass amended its senior secured revolving credit facility to (i) increase the borrowing capacity under its committed
Line of credit from $<span id="xdx_900_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250903__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zYO5fWSfc3Pk" title="Line of credit">150</span> million to $<span id="xdx_906_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zq1pqq15OyI3" title="Line of credit facility, maximum borrowing capacity">500</span> million, (ii) reduce its borrowing costs by an approximate 25 basis points, and (iii) <span id="xdx_901_eus-gaap--DebtInstrumentMaturityDateDescription_c20250904__20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_z2Mw5b2IDxoe" title="Loan maturity period description">extend
the initial maturity date by five years to the end of 2030</span>. Borrowings under the credit facility will now bear interest at the Secured
Overnight Financing Rate (SOFR) with no floor plus a spread of <span id="xdx_90A_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20250904__20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_z8492OoiUzH8" title="Debt instrument basis spread on variable rate">1.25</span>%, based on the Company&#8217;s net leverage ratio, compared to a
prior spread of <span id="xdx_905_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20240904__20240904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_za5Y1yTQOOI5" title="Debt instrument basis spread on variable rate">1.50</span>%. The facility was led by Wells Fargo Bank N.A. as Administrative Agent; with BMO Bank N.A, Citibank N.A, Citizens
Bank N.A, First Citizens Bank &amp; Trust Company and J.P. Morgan Chase Bank N.A, as Joint Lead Arrangers.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the fair value of the Company&#8217;s interest rate swap and foreign currency non-delivery option contracts was in
a net asset position of $<span id="xdx_904_eus-gaap--DerivativeAssets_iI_pn5n6_c20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zeKSC7Zhkyn3" title="Derivative assets">1.0</span> million. We had 2 outstanding interest rate swap contracts of $<span id="xdx_909_eus-gaap--InterestEarningAssetsAverageAmountOutstanding_pn6n6_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zMxXpOoSopJk" title="Interest earning assets average outstanding">110</span> million through November 2026 as an economic
hedge and 8 non-delivery option contracts to exchange $<span id="xdx_901_eus-gaap--LongTermDebtAverageAmountOutstanding_pn6n6_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zaDUzMrl2mp2" title="Debt outstanding amount">60</span> million U.S. Dollars to Colombian Pesos through December 2026.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the second quarter of 2026, the Company did not assess the effectiveness of foreign currency non-delivery option contracts due to the
contracts the Company entered into on May 5, 2026 which did not qualify for hedge accounting and were not designated as hedging instruments.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Because
of the discontinuation of the hedge accounting for the interest rate swap in the third quarter of 2025, the Company did not assess the
effectiveness of this instrument.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
gain or loss on the Company&#8217;s foreign currency non-delivery option contracts are reported as a component of the earnings. The change
in the fair value of the interest rate swap designated as an economic hedge will be included in earnings at the moment of its valuation.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30,2026, there are no gains or losses, net, recognized in the &#8220;accumulated other comprehensive income&#8221; for non-delivery
option and interest rate swap contracts.</span></p>

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

<p id="xdx_89C_ecustom--ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_zqUc5XMzJdkl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of interest rate swap and foreign currency non-delivery option hedges is classified in the accompanying consolidated balance
sheets, as of June 30, 2026, as follows:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B9_zNSlVFjDWRva" style="display: none">Schedule
of Fair Value of Foreign Currency Hedges</span></span></span></span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font: bold 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Derivative Assets</span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Derivative
Liabilities</span></td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Derivatives financial instruments</b></span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30, 2026</b></span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><p style="margin-top: 0; margin-bottom: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June
30, 2026</b></span></p>

</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">under&#8239;Subtopic 815-20:</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Balance&#8239;Sheet&#8239;<br/>
 Location</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Balance&#8239;Sheet&#8239;<br/>
 Location</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Derivative instruments:</td><td>&#160;</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="border-left: Black 1pt solid">&#160;</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; width: 30%; text-align: left">Interest Rate Swap Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 18%; text-align: left">Other current assets</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zaUmP6QpA11j" style="width: 11%; text-align: right" title="Total derivative assets">787</td><td style="width: 1%; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; width: 2%">&#160;</td>
    <td style="width: 18%; text-align: left">Accrued liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 11%; text-align: right"><span id="xdx_90E_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zlRListcWqT5" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1309">-</span></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 10pt; text-align: left">foreign currency non-delivery forwards</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zVGZT5gRNRGl" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets">232</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span id="xdx_90B_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zQiA7h2b85ec" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1313">-</span></span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; padding-left: 20pt; text-align: left">Total derivative instruments</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">Total derivative assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630_ze5nsOc59g97" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets">1,019</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">Total derivative liabilities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><span id="xdx_907_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630_zGiNFFfYWONk" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1317">-</span></span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table>


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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
ending accumulated balance for foreign currency non-delivery option contracts included in earnings, net of tax, was $<span id="xdx_905_eus-gaap--AccumulatedOtherComprehensiveIncomeLossNetOfTax_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_z4WLmCdHIcP4" title="Accumulated other comprehensive income net of tax">232</span> as of June 30,2026,
comprised of a derivative gain of $<span id="xdx_904_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember_zhfdOFuVIr51" title="Accumulated other comprehensive income net of tax">232</span>. No deferred income tax was calculated because the amounts accrued as of June 30, 2026 are the
same as the compensation received.</span></p>

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

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



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

<p id="xdx_890_eus-gaap--ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_zCFaUDcykf2h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents the gains (losses) on derivative financial instruments, and their classifications within the accompanying consolidated
financial statements, for the three months ended June 30, 2026, and 2025:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;&#160;<span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zdzfpWTf99e9" style="display: none">Schedule
of Gains (Losses) on Derivative Financial Instruments quarter ended</span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives in Cash Flow Hedging Relationships</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss)</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Location of Gain or (Loss) Reclassified from Accumulated</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss) Reclassified from</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Recognized in earnings on</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">OCI (Loss) into</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">OCI (Loss) into Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 30%; text-align: left">Interest Rate Swap and foreign currency non-delivery forwards Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zP5nOAyQKBzd" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">1,808</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_983_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zlBcyxfrqqY2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">748</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 20%; text-align: center">Interest income (expense), net and deferred cost of financing and operating revenues </td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zzGtsYyOiKU2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"><span style="-sec-ix-hidden: xdx2ixbrl1329">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zsyc1vE020Hh" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">1,250</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives in Cash Flow Hedging Relationships</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss)</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Location of Gain or (Loss) Reclassified from Accumulated</td><td>&#160;</td>
    <td colspan="6" style="text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Amount of Gain or (Loss)</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Reclassified from</b></span></p></td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Recognized in earnings on</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">OCI (Loss) into</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Income</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">OCI (Loss) into Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 30%; text-align: left">Interest Rate Swap and foreign currency non-delivery forwards Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_981_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z9lP0eoyU03d" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">2,782</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z2iOOdpiIIUg" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">148</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 20%; text-align: center">Interest income (expense), net and deferred cost of financing and operating revenues</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zfi2A4MgNjqc" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"><span style="-sec-ix-hidden: xdx2ixbrl1337">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_z58G94oUeftf" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">2,242</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company accounts for financial assets and liabilities in accordance with accounting standards that define fair value and establish a
framework for measuring fair value. The hierarchy prioritizes the inputs into three broad levels. Level 1 inputs are quoted prices (unadjusted)
in active markets for identical assets or liabilities. Level 2 inputs are quoted prices for similar assets and liabilities in active
markets or inputs that are observable for the asset or liability, either directly or indirectly through market corroboration, for substantially
the full term of the financial instrument. Level 3 inputs are unobservable inputs based on the Company&#8217;s assumptions used to measure
assets and liabilities at fair value. A financial asset&#8217;s or liability&#8217;s classification within the hierarchy is determined
based on the lowest level input that is significant to the fair value measurement.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
carrying amounts of the Company&#8217;s financial instruments, including cash and cash equivalents, accounts receivable, accounts payable
and advances from customers approximate their fair value due to their relatively short-term maturities. The Company bases its fair value
estimate for long term debt obligations on its internal valuation that all debt is floating rate debt based on current interest rates
in Colombia.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair values of derivatives used to manage interest rate risks are based on SOFR rates and interest rate swap curves. Measurement of our
derivative assets and liabilities is considered a level 2 measurement. To carry out the swap valuation, the definition of the fixed leg
(obligation) and variable leg (right) is used. Once the projected flows are obtained in both fixed and variable rates, the regression
analysis is performed for prospective effectiveness test. The projection curve contains the forward interest rates to project flows at
a variable rate and the discount curve contains the interest rates to discount future flows, using the one-month USD Libor curve.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, financial instruments carried at amortized cost that do not approximate fair value consist of long-term debt. See Note
8 &#8211; Debt. The fair value of long-term debt was calculated based on an analysis of future cash flows discounted at current market
rates (which are level 2 inputs).</span></p>

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

<p id="xdx_894_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zLrtg6dUrum5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the fair value and carrying amounts of our long-term debt:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zEKGSrwYzX1f" style="display: none">Schedule
of Fair Value and Carrying Amounts of Long Term Debt</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20260630_z37RJ0XB0yz7" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2026</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20251231_z9Xw1wFjWFgc" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2025</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LongTermDebtFairValue_iI_pn3n3_zKa13dL4QzEk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Fair Value</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">215,180</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">170,727</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zSzgwgew1Z2j" style="vertical-align: bottom; background-color: White">
    <td>Carrying Value</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">219,238</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">171,202</td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 181<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-181<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 182<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-182<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 184<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-184<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 185<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-185<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (a)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4H<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4H<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4H<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4H<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 15<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480960/815-15-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 183<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-183<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4I<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4I<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4F<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4F<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-1A<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-1A<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-1A<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/815/tableOfContent<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-5C<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"><p id="xdx_809_eus-gaap--IncomeTaxDisclosureTextBlock_z7g8eZ1xcPCh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
10.<span id="xdx_824_zlKstDgsSy45"> Income Taxes</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company files income tax returns for TG, ES and ES Metals in the Republic of Colombia. GM&amp;P, Componenti and ESW LLC are U.S. entities
based in Florida subject to U.S. federal and state income taxes. Tecnoglass as well as the Company&#8217;s other subsidiaries in the
Cayman Islands do not currently have any tax obligations.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
July 7, 2026, the Company completed its continuation from the Cayman Islands to the State of Florida and changed its jurisdiction of
incorporation from the Cayman Islands to Florida. In connection with the continuation, the Company became governed by the Florida Business
Corporation Act and its Florida Articles of Incorporation and Bylaws. Each outstanding ordinary share of the Company automatically became
a share of common stock of the Florida corporation with the same par value, and the Company&#8217;s common stock continues to be listed
and traded on the New York Stock Exchange under the symbol &#8220;TGLS.&#8221;</span></p>

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

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

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



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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
a result of the redomiciliation, the Company will be subject to U.S. federal income taxation. The Company&#8217;s foreign subsidiaries
will be treated as controlled foreign corporations for U.S. tax purposes, and certain income of those entities will be included in the
U.S. tax computation. Management believes that the effective foreign tax rates applicable to such income are sufficient to generate foreign
tax credits that substantially offset any incremental U.S. federal income tax liability. Accordingly, management does not expect the
redomiciliation to have a material impact on the Company&#8217;s income tax provision.</span></p>

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

<p id="xdx_892_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z7mUdjs4Lt8j" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of income tax expense are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_z4gM7pD2HG9d" style="display: none">Schedule
of Components of Income Tax Expense</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49C_20260401__20260630_zEspyM4OFgX5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49F_20250401__20250630_zLkuv8gz2VK1" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49D_20260101__20260630_zlxANL5NSlpj" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49E_20250101__20250630_zeNqz8ppTE7e" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Current income tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_z41yymLJPOi3" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">United States</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(7,327</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(8,286</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(14,417</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(11,920</td><td style="width: 1%; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zmVsqKoi08Lj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Colombia</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,208</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(10,329</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,571</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(21,881</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--PA_z9I4b4oXbmX" style="vertical-align: bottom; background-color: White">
    <td>Panama</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1363">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(1</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1365">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_zNPEy9wDym1i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total current income tax</span></td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(8,535</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(18,616</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(20,988</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(33,806</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred income Tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_zJ05AKjQ8ys4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,130</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">58</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(994</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,355</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zWiToKdm44O2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Colombia</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,430</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">410</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(4,015</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(647</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_zq8YfYmmsED7" style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total deferred income tax</span></td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,560</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">468</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,009</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,002</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--IncomeTaxExpenseBenefit_iN_pn3n3_di_z3SFonrzfKo7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total income provision</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(14,095</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(18,148</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(25,997</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(35,808</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateContinuingOperations_pid_dp_uPure_zHwyudi7p41" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Effective tax rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">36.5</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">29.2</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">31.5</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">29.3</td><td style="text-align: left">%</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
effective income tax rate for the three and six months ended June 30, 2026, of <span id="xdx_90C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20260401__20260630_zNrsDDmHpTae" title="Statutory income tax rate">36.5</span>%, and <span id="xdx_90F_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20260101__20260630_zFVLpmBJcEt8" title="Statutory income tax rate">31.5</span>%, respectively, reflects he impact of certain foreign expenses incurred by the Company&#8217;s Colombian subsidiaries that are not deductible for income tax purposes. The effective
income tax rate for the three and six months ended June 30, 2025, of <span id="xdx_902_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20250401__20250630_zIVKmb6x7tKh" title="Statutory income tax rate">29.2</span>%, and <span id="xdx_908_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20250101__20250630_znjxNbhqQ9pj" title="Statutory income tax rate">29.3</span>%, respectively, approximates the weighted average
statutory rate of <span id="xdx_90E_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_pid_dp_uPure_c20260101__20260630_zXkuRpcuRE76" title="Weighted average statutory rate">29.1</span>%.</span></p>

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 740<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477617/942-740-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 740<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478822/944-740-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12C<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12B<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477891/740-270-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-13<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/740/tableOfContent<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-14<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-21<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-17<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Parties<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsAbstract', window );"><strong>Related Party Transactions [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Parties</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--RelatedPartyTransactionsDisclosureTextBlock_zA6cmrWfO5mf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
11. <span id="xdx_82F_zSnu9k5eAumc">Related Parties</span></b></span></p>

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

<p id="xdx_899_eus-gaap--ScheduleOfRelatedPartyTransactionsTableTextBlock_zzJMawkfBaF9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following is a summary of assets, liabilities, and income transactions with all related parties:</span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_498_20260630_zB8VoKaWW8sc" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49C_20251231_zU10sDXTopL8" style="font-weight: bold; text-align: center">December 31,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Due from related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYa5dHayodYf" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left">Alutrafic Led SAS</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">644</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">525</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z4l9SCPOkpUf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Studio Avanti SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">427</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">403</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z8trKFIYDuti" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Prisma-Glass LLC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">404</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvomiWAZGspj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Due from other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">645</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">670</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zLueAwP7eWHe" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1pt">Total due from related parties</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">2,075</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">2,002</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Due to related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zu73D6ZhCK65" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Vidrio Andino</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,131</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,717</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zkI2AAZtLwCd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Due to other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">3,764</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,164</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUe6z8kJ80Rl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1pt">Total due to related parties</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">8,895</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">10,881</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

<p id="xdx_89F_ecustom--ScheduleOfSaleToRelatedPartyTableTextBlock_zCetpNutn8Ck" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zCZwS14O0JO3" style="display: none">Schedule of Sale to Related Parties</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260401__20260630_zIx960hdwuSl" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20250401__20250630_zTQAq5li7D82" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_497_20260101__20260630_z1LrHc7hthgf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20250101__20250630_zY4yLST7hgV7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Sales to related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKAbpRw7IGM2" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Prisma Glass LLC</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">448</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">785</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">604</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">1,168</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z6AQXZpNWKX4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Alutrafic Led SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">276</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">230</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">569</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">587</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYOZkxWsFxtf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Studio Avanti SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">51</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">294</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">145</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">532</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--SalesToOtherRelatedPartiesMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zyzFB6Gny5H3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Sales to other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(55</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">93</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">23</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">130</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zBnTFvAnmPTi" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales to related parties</span></td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">720</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">1,401</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">1,341</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">2,417</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

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

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



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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we sell products to Alutrafic Led SAS (&#8220;Alutrafic&#8221;), a fabricator of electrical lighting
equipment. Affiliates of Jose Daes and Christian Daes, the Company&#8217;s Chief Executive Officer and Chief Operating Officer, respectively,
have an ownership stake in Alutrafic. During the three and six months ended June 30, 2026, we sold $<span id="xdx_903_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z7DB6J1xbn22" title="Revenue from related parties">276</span>, and $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zfejn2xz33Cb" title="Revenue from related parties">569</span>, respectively, to Alutrafic,
compared to $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z72s2jx4EcKa" title="Revenue from related parties">230</span> and $<span id="xdx_903_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z67X1TCSDbYb" title="Revenue from related parties">587</span> during the three and six months ended June 30, 2025, respectively. Additionally, we had outstanding accounts
receivable from Alutrafic of $<span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zsXEnDaAzdnj" title="Accounts receivable">644</span> and $<span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvozkj8riDl9" title="Accounts receivable">525</span> as of June 30, 2026, and December 31, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fundacion
Tecnoglass-ESWindows is a non-for-profit entity set up by the Company to carry out social causes in the communities around where we operate.
We made charitable contributions during the three and six months ended June 30, 2026 of $<span id="xdx_90D_ecustom--CashContributionsForSocialCauses_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zTMcsxpYKrW" title="Cash contributions for social causes">1,242</span> and $<span id="xdx_902_ecustom--CashContributionsForSocialCauses_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zx8XjzSLkPO" title="Cash contributions for social causes">2,426</span>, respectively, compared to
$<span id="xdx_900_ecustom--CashContributionsForSocialCauses_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zAQgFkR8lJd9" title="Cash contributions for social causes">998</span> and $<span id="xdx_907_ecustom--CashContributionsForSocialCauses_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zQV18jErpGIk" title="Cash contributions for social causes">2,046</span>, during the three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we sell products to Prisma-Glass LLC, a distributer and installer of architectural systems in Florida
that is owned and controlled by family members of Christian Daes. We sold $<span id="xdx_904_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUIlgur6D49j" title="Revenue from related parties">448</span> and $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zxJNB7Ou1Aak" title="Revenue from related parties">604</span>, respectively, to Prisma-Glass LLC during the
three and six months ended June 30, 2026, compared to $<span id="xdx_90B_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zzCM9r7DXNM4" title="Revenue from related parties">785</span> and $<span id="xdx_900_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zakknlS96un8" title="Revenue from related parties">1,168</span>, respectively, during the three and six months ended June 30, 2025.
The Company had outstanding accounts receivable from Prisma-Glass of $<span id="xdx_90D_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zEF9QEC7f12h" title="Accounts receivable">359</span> and $<span id="xdx_90D_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zQZiBk7cjkC3" title="Accounts receivable">404</span> as of June 30, 2026, and December 31, 2025, respectively.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Santa
Maria del Mar SAS</i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we purchase fuel for use at our manufacturing facilities from Estaci&#243;n Santa Maria del Mar SAS,
a gas station located in the vicinity of our manufacturing campus which is owned by affiliates of Jose Daes and Christian Daes. During
the three and six months ended June 30, 2026, we purchased $<span id="xdx_901_ecustom--PurchasePriceOfFuel_pn3n3_c20260401__20260630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zOlFuRuM5QB6" title="Purchases of fuel">462</span> and $<span id="xdx_909_ecustom--PurchasePriceOfFuel_pn3n3_c20260101__20260630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zafW5hESOgAl" title="Purchases of fuel">846</span>, respectively, compared to $<span id="xdx_90D_ecustom--PurchasePriceOfFuel_pn3n3_c20250401__20250630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvjpsfxfNd9f" title="Purchases of fuel">131</span> and $<span id="xdx_902_ecustom--PurchasePriceOfFuel_pn3n3_c20250101__20250630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_znJqlWa6pEkf" title="Purchases of fuel">719</span> purchased during the
three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2025, the Company entered into a partnership with Storm Armour, LLC to create Storm Armour Solutions, LLC which has the purpose
of participating in the sale, sublicensing, and distribution of licensed products in the areas of influence, under a licensing agreement.
To join this business, Tecno Inc created a wholly owned subsidiary named Tecnoglass Armour, LLC, a Limited Liability Company based in
the State of Florida. Tecnoglass Armour, LLC has a <span id="xdx_907_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20250630__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--StormArmourSolutionsLLCMember_z2w6XVuFnEmd" title="Equity method investment ownership percentage">60</span>% capital contribution of Storm Armour Solutions, LLC. As of June 30, 2026, we had
an investment of $<span id="xdx_90A_eus-gaap--Investments_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--StormArmourSolutionsLLCMember_z4EpDRJbXCi8" title="Investments">901</span> recorded on our consolidated balance sheet.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we sell products to Studio Avanti SAS (&#8220;Avanti&#8221;), a distributer and installer of architectural
systems in Colombia. Avanti is owned and controlled by Alberto Velilla, who is director of Energy Holding Corporation, the Company&#8217;s
largest shareholder. As of June 30, 2026 and December 31, 2025, the Company had outstanding accounts receivable from Avanti of $<span id="xdx_90C_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYTSbdUKfMe9" title="Accounts receivable">427 </span>and
$<span id="xdx_90E_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zr6TP2IyLPN8" title="Accounts receivable">403</span>, respectively. During the three and six months ended June 30, 2026, we sold $<span id="xdx_90C_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z5UmDfb6sKT2" title="Revenue from related parties">51</span> and $<span id="xdx_900_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z9O0CUrSKaGc" title="Revenue from related parties">145</span> of products to Avanti, respectively, compared
to $<span id="xdx_909_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zAzPXj9EYJFl" title="Revenue from related parties">294</span> and $<span id="xdx_904_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKPgWZJxcAKa" title="Revenue from related parties">532</span> during the three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
May 3, 2019, we consummated a joint venture agreement with Saint-Gobain, a world leader in the production of float glass, a key component
of our manufacturing process, whereby we acquired a <span id="xdx_90C_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_c20190503__srt--OwnershipAxis__custom--VidrioAndinoMember_zrWL9f949cZ3" title="Minority interest ownership">25.8</span>% minority ownership interest in Vidrio Andino, a Colombia-based subsidiary of
Saint-Gobain. The purchase price for our interest in Vidrio Andino was $<span id="xdx_90F_eus-gaap--BusinessCombinationConsiderationTransferred1_pn6n6_c20201208__20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zpoi1Bi66WGh" title="Purchase price of interest">45</span> million, of which $<span id="xdx_90F_eus-gaap--PaymentsToAcquireBusinessesGross_pn5n6_c20201208__20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zIIf0zs9DYgj" title="Payment of cash">34.1</span> million was paid in cash and $<span id="xdx_90D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pn5n6_c20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zOsRlSmkAeBi" title="Land contribution value">10.9
</span>million paid through the contribution of land on December 9, 2020. On October 28, 2020, we acquired said land from a related party and
paid for it with the issuance of an aggregate of <span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesAcquisitions_pid_c20201028__20201028__srt--OwnershipAxis__custom--VidrioAndinoMember_zxbzVeQwsEh3" title="Shares issued during acquisition">1,557,142</span> ordinary shares of the Company, valued at $<span id="xdx_901_eus-gaap--SharesIssuedPricePerShare_iI_pid_c20201028__srt--OwnershipAxis__custom--VidrioAndinoMember_zgCaXgBwgjQl" title="Shares issued, price per share">7.00</span> per share, which represented
an approximate<span id="xdx_904_ecustom--PremiumClosingStockPercentage_iI_pid_dp_uPure_c20201027__srt--OwnershipAxis__custom--VidrioAndinoMember_zCrxGnGZQ17b" title="Premium closing stock, percent"> 33</span>% premium based on the closing stock price as of October 27, 2020.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
land will serve the purpose of developing a second float glass plant nearby our existing manufacturing facilities which we expect will
carry significant efficiencies for us once it becomes operative, in which we will also have a <span id="xdx_90B_ecustom--ExpectedOwnershipPercentage_pid_dp_uPure_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zwkpAYeggvJi" title="Expected ownership percentage">25.8</span>% interest. The new plant will be funded
with proceeds from the original cash contribution made by the Company, operating cashflows from the Bogota plant, debt incurred at the
joint venture level that will not consolidate into the Company and an additional contribution by us of approximately $<span id="xdx_907_ecustom--FutureAdditionalContributionAmount_pn5n6_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_znehCTgBXqGi" title="Additional contribution amount">12.5</span> million if
needed (based on debt availability as a first option).</span></p>

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

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



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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we purchased $<span id="xdx_909_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20260401__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zLK1sFiPlDE1" title="Purchase from related party">9,352</span> and $<span id="xdx_90A_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zMIthypWg096" title="Purchase from related party">17,393</span>, of materials from Vidrio Andino during the three and six months ended
June 30, 2026, respectively, compared to $<span id="xdx_901_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20250401__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_z457kGMTz5B2" title="Purchase from related party">10,633</span>, and $<span id="xdx_900_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20250101__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_z8DtIkXNl2Vd" title="Purchase from related party">19,678</span>, during the three and six months ended June 30, 2025, respectively. We
also had outstanding payables to Vidrio Andino of $<span id="xdx_906_eus-gaap--AccountsPayableCurrent_iI_pn3n3_c20260630__srt--OwnershipAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zGTuPID1eGc1" title="Payable outstanding">5,131</span> and $<span id="xdx_908_eus-gaap--AccountsPayableCurrent_iI_pn3n3_c20251231__srt--OwnershipAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zssVhNHkMOU" title="Payable outstanding">5,717</span> as of June 30, 2026 and December 31, 2025, respectively. We recorded
equity method loss of $<span id="xdx_908_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20260401__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zUeh8iCwVXBg" title="Equity method income">159</span>, and income of $<span id="xdx_909_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zJfix5Ywtuhi" title="Equity method income">3</span>, on our Consolidated Statement of Operations during the three and six months ended June
30, 2026, respectively, compared to $<span id="xdx_908_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20250401__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_zfbpMlayPLK5" title="Equity method income">941</span> and $<span id="xdx_90C_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20250101__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_zvr8F3XnRjBg" title="Equity method income">2,258</span>, recorded during the three and six months ended June 30, 2025, respectively.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have an investment in Zofracosta SA, a real estate holding company located in the vicinity of the proposed glass plant being built through
our Vidrio Andino joint venture, recorded at $<span id="xdx_907_eus-gaap--Investments_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--ZofracostaSAMember_z6GN0r2eRrKb" title="Investments">883</span> and $<span id="xdx_90F_eus-gaap--Investments_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--ZofracostaSAMember_z4R02GYrBbgh" title="Investments">810</span> as of June 30, 2026 and December 31, 2025, respectively. Affiliates of Jose
Daes and Christian Daes have a majority ownership stake in Zofracosta SA.</span></p>

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(7)(e)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-6<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/850/tableOfContent<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-6<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shareholders&#8217; Equity<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Shareholders&#8217; Equity</a></td>
<td class="text"><p id="xdx_80D_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zypxtQAl2bSi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
12. <span id="xdx_82D_zkoAw6mjD5Id">Shareholders&#8217; Equity</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
June 10, 2026, the Company declared a regular quarterly dividend of $<span id="xdx_900_eus-gaap--SharePrice_iI_pid_c20260318__us-gaap--AwardTypeAxis__custom--QuarterlyRateMember_zW5A8ZrJ1Tzg" title="Declared per share">0.15</span>per share, or $<span id="xdx_901_eus-gaap--SharePrice_iI_pid_c20260318__us-gaap--AwardTypeAxis__custom--AnnualBasisMember_zdN81T8mhTOi" title="Share price">0.60</span> per share on an annualized basis. The dividend
was paid on July 31, 2026, to shareholders of record as of the close of business on June 30, 2026.</span></p>

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

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

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

<p id="xdx_898_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zwMLxdiSYyfc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth the computation of the basic and diluted earnings per share for the three and six months ended June 30, 2026
and 2025:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z8VjupJubIij" style="display: none">Schedule of Earnings Per Share, Basic and Diluted</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_492_20260401__20260630_z19WjrnNjtse" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_492_20250401__20250630_zUgwseg41kU6" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_498_20260101__20260630_zVuScfm19hGk" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_491_20250101__20250630_zEPKjPo0IOzc" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three
months ended June 30,</b></span></p></td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-right: 0pt; margin-left: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six
months ended June 30,</b></span></p></td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Numerator for basic and diluted earnings per share</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--NetIncomeLoss_pn3n3_zMqOZExWCnbe" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Net Income attributable to parent</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">24,555</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">44,083</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">56,446</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">86,272</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Denominator</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zc4zDLzjyfuj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Denominator for basic earnings per ordinary share - weighted average shares outstanding</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">44,364,801</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">46,988,155</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">44,497,265</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">46,989,650</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--EffectOfDilutiveSecuritiesAndStockDividend_pid_zhuPwpmVUF1j" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Effect of dilutive securities and stock dividend</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zO6yER9Llm29" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Denominator for diluted earnings per ordinary share - weighted average shares outstanding</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">44,364,801</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">46,988,155</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">44,497,265</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">46,989,650</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--EarningsPerShareBasic_pid_zXyHF1VeU2e8" style="vertical-align: bottom; background-color: White">
    <td>Basic earnings per ordinary share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.55</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.94</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.27</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.84</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--EarningsPerShareDiluted_pid_zxmUn3cZOrl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted earnings per ordinary share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.55</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.94</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.27</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.84</td><td style="text-align: left">&#160;</td></tr>
  </table>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the six months ended June 30, 2026, the Company repurchased <span id="xdx_907_eus-gaap--TreasuryStockSharesAcquired_pid_c20260101__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zjHBd5vF7Ydg" title="Number of shares repurchased">372,910</span> shares for an aggregate purchase price of $<span id="xdx_909_eus-gaap--TreasuryStockValueAcquiredCostMethod_iN_pn5n6_di_c20260101__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zeEdqk81gXUi" title="Value of shares repurchased">16.5</span> million as part of
its existing share repurchase program to enhance long-term stockholders value. Treasury stock is recorded at cost and presented as a
reduction of stockholders&#8217; equity in the accompanying Consolidated Balance Sheets. As of June 30, 2026, treasury shares are carried
at their aggregate repurchase cost of $<span id="xdx_904_eus-gaap--TreasuryStockValue_iI_pn3n3_c20260630_zXxcoQEA8V67" title="Treasury shares, aggregate repurchase cost">95,679</span>.</span></p>

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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479951/505-20-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479982/505-20-S25-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479951/505-20-S50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S25<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479982/505-20-S25-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SAB Topic 4.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-4<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 1.D.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479921/505-20-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479951/505-20-S50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 1.B.3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480148/855-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S25<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479982/505-20-S25-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/505/tableOfContent<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480237/815-40-50-5<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-6<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480237/815-40-50-6<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><p id="xdx_805_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zUPvuKiRWZm8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
13. <span id="xdx_82E_zehRMESBUsVb">Commitments and Contingencies</span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of June 30, 2026, the Company had outstanding obligations to purchase an aggregate of at least $<span id="xdx_90D_eus-gaap--LongTermPurchaseCommitmentAmount_pn3n3_c20260101__20260630__srt--RangeAxis__srt--MinimumMember__srt--StatementScenarioAxis__custom--FebruaryTwentyEightThousandThirtyThreeMember_zHNWxYSrROmg" title="Purchase of aggregate raw material">151,878</span> of certain raw materials from
a specific supplier before February 28, 2030, and an aggregate of at least $<span id="xdx_90C_eus-gaap--LongTermPurchaseCommitmentAmount_pn3n3_c20260101__20260630__srt--RangeAxis__srt--MinimumMember__srt--StatementScenarioAxis__custom--ThroughTwoThousandTwentyEightMember_zBdJl84NyOg5" title="Purchase of aggregate raw material">8,364</span> of certain raw materials from a specific supplier through
2028.</span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
time to time, the Company is involved in legal matters arising in the regular course of business. Some disputes are derived directly
from our construction projects, related to supply and installation, and even though deemed ordinary, they may involve significant monetary
damages. We are also subject to other type of litigations arising from employment practices, worker&#8217;s compensation, automobile
claims and general liability. It is very difficult to predict precisely what the outcome of these litigations might be. However, with
the information at our disposition as this time, there are no indications that such claims will result in a material adverse effect on
the business, financial condition or results of operations of the Company.</span></p>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/440/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/450/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-30/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478522/954-440-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation and Use of Estimates</a></td>
<td class="text"><p id="xdx_842_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zbEmYlFw8EP1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86E_zmQdi6Vc4Lga">Basis
of Presentation and Use of Estimates</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally
accepted in the United States of America (&#8220;US GAAP&#8221;) and pursuant to the accounting and disclosure rules and regulations
of the Securities and Exchange Commission (&#8220;SEC&#8221;) for interim reporting purposes. The results reported in these unaudited
condensed consolidated financial statements are not necessarily indicative of results that may be expected for the entire year. These
unaudited condensed consolidated financial statements should be read in conjunction with the information contained in the Company&#8217;s
Annual Report on Form 10-K for the year ended December 31, 2025. The year-end condensed balance sheet data was derived from the audited
financial statements in the Annual Report on Form 10-K but does not include all disclosures required by US GAAP.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of these unaudited condensed consolidated financial statements requires the Company to make estimates and judgments that
affect the reported amounts of assets and liabilities, revenues and expenses, and related disclosures of contingent assets and liabilities
at the date of the Company&#8217;s financial statements. Actual results may differ from these estimates under different assumptions and
conditions. Estimates utilized in the preparation of these unaudited condensed consolidated financial statements relate to the collectability
of account receivables, the valuation of inventories, estimated earnings on uncompleted contracts, useful lives and potential impairment
of long-lived assets. Changes in estimates are reflected in the periods during which they become known. Actual amounts may differ from
these estimates and could differ materially. These financial statements reflect all adjustments that in the opinion of management are
necessary for a fair statement of the financial position, results of operations and cash flows for the period presented, and are of a
normal, recurring nature.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has one operating segment, Architectural Glass and Windows, which is also its reporting segment. The segment comprises the design,
manufacturing, distribution, marketing and installation of high-specification architectural glass and window products sold to residential
and commercial markets.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
chief operating decision maker (&#8220;CODM&#8221;) assesses performance and decides how to allocate resources based on gross profit
and net income that also is reported on the income statement as consolidated net income, cash flows from operations which are reported
on the consolidated statement of cash flows, along with certain non-G.A.A.P metrics. Significant segment expenses include cost of sales,
selling expense, and general and administrative expenses. Other segment items included in consolidated net income are interest expense,
other expense, net and the provision for income taxes, which are reflected in the condensed consolidated statements of operations and
other comprehensive income. These metrics are used to monitor budgeted versus actual results, and competitive analysis by benchmarking
to the Company&#8217;s competitors. The Company&#8217;s CODM are the Company&#8217;s Chief Executive Officer and Chief Operating Officer
acting together as a group.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company performs intra-entity sales and transfers within its single segment comprised of several vertically integrated processes including
its main manufacturing operations in Colombia and distribution and installation in the United States. The Company considers its operations
to be a single reporting segment because it only produces architectural glass and window systems to serve similar markets in a vertically
integrated platform.</span></p>

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

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



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

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Principles of Consolidation</a></td>
<td class="text"><p id="xdx_84D_eus-gaap--ConsolidationPolicyTextBlock_zRtmrbFGKsod" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_864_zd5tORF7wbfe">Principles
of Consolidation</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
unaudited consolidated financial statements consolidate Tecnoglass, its subsidiaries TG, ES, ES Windows LLC (&#8220;ESW LLC&#8221;),
Tecnoglass LLC, Tecno RE LLC, Tecnoglass Armour, LLC, GM&amp;P Consulting and Glazing Contractors (&#8220;GM&amp;P&#8221;), Componenti
USA LLC, ES Metals SAS (&#8220;ES Metals&#8221;), Ventanas Solar S.A (&#8220;VS&#8221;), which are entities in which we have a controlling
financial interest because we hold a majority voting interest. To determine if we hold a controlling financial interest in an entity,
we first evaluate if we are required to apply the variable interest entity (&#8220;VIE&#8221;) model to the entity, otherwise the entity
is evaluated under the voting interest model. All significant intercompany accounts and transactions are eliminated in consolidation,
including unrealized intercompany profits and losses. The equity method of accounting is used for investments in affiliates and other
joint ventures over which the Company has significant influence but does not have effective control.</span></p>

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

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativesPolicyTextBlock', window );">Derivative Financial Instruments</a></td>
<td class="text"><p id="xdx_842_eus-gaap--DerivativesPolicyTextBlock_zHY21XXkZs3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86D_zsDn1hOuWUug">Derivative
Financial Instruments</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognizes all derivative financial instruments as either assets or liabilities at fair value on the condensed consolidated balance
sheet. The unrealized gains or losses arising from changes in fair value of derivative instruments that are designated and qualify as
cash flow hedges, are recorded in the condensed consolidated statement of comprehensive income. Amounts in accumulated other comprehensive
loss on the condensed consolidated balance sheet are reclassified into the condensed consolidated statement of income in the same period
or periods during which the hedged transactions are settled.</span></p>

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

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ExtendedProductWarrantyPolicy', window );">Product Warranties</a></td>
<td class="text"><p id="xdx_84C_eus-gaap--ExtendedProductWarrantyPolicy_zUX3zI3TekQ9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_zj26imsZYbxc">Product
Warranties</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_eus-gaap--StandardProductWarrantyDescription_c20260101__20260630_zvQenju0X9L2" title="Product warranties description">The
Company offers product warranties in connection with the sale and installation of its products that are competitive in the markets in
which the products are sold. Standard warranties vary based upon the product and service offered and durations are generally from five
to ten years for architectural glass, curtain wall, laminated and tempered glass, window and door products.</span> Warranties are not priced
or sold separately and do not provide the customer with services or coverages in addition to the assurance that the product complies
with original agreed-upon specifications. Claims are settled by replacement of the warrantied products. The Company records a liability
for estimated future warranty costs at the time of sale based on historical claims data and projected revenues. This liability is reassessed
periodically based on updated claims experience and revenue projections.</span></p>

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

<p id="xdx_890_eus-gaap--ScheduleOfProductWarrantyLiabilityTableTextBlock_zlP2fhss76wi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes in the product warranty liability for the six months ended June 30, 2026, are:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zTvqIZrikBmb" style="display: none">Schedule
of Product Warranty Liability</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_494_20260101__20260630_zzNKflqq1Ifi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20250101__20250630_zhCm0PRRTKT8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iS_pn3n3_znjD6g3tfZ31" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Balance at beginning of period</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">363</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0762">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--StandardProductWarrantyAccrualWarrantiesIssued_pn3n3_zTTjhMO6YE96" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Accruals for product warranties issued during period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">550</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">570</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--StandardProductWarrantyAccrualPayments_iN_pn3n3_di_zWPvdmPUf28h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Reductions for payments made under product warranties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(610</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(279</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iE_pn3n3_zcfkKXnHHTmh" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance at end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">303</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">291</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

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

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock', window );">Recovery of Previously Paid Import Tariffs</a></td>
<td class="text"><p id="xdx_84F_ecustom--RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_zSNDGwu1GL3a" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_869_zaIx1sfiyFwa">Recovery
of Previously Paid Import Tariffs</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the three months ended March 31, 2026, the Company recorded $<span id="xdx_905_ecustom--RecoveryOfPreviouslyPaidImportTariffs_pn3n3_c20260101__20260331_zcqGbBcSij8c" title="Recovery of previously paid import tariffs">1,876</span> of recoveries associated with import tariffs on certain products imported
to the United States under the International Emergency Economic Powers Act (&#8220;IEEPA&#8221;) paid in 2025 and the first quarter of
2026. In February 2026, the U.S. Supreme Court ruled that certain tariffs imposed under the IEEPA were not valid, and in March 2026,
the Court of International Trade ruled that U.S. Customs and Border Protection was required, subject to applicable procedures, to refund
IEEPA tariffs that had been collected. The Company filed reimbursement claims with U.S. Customs and Border Protection, which were accepted
on April 20, 2026 and reimbursement was received in July, 2026. These recoveries relate to previous year and current period imports for
which eligibility for refund was subsequently established. The Company recognized the recovery in the period in which realization became
probable and reasonably estimable as a reduction to selling expenses on the Condensed Consolidated Statement of Operations.</span></p>

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

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recently Issued Accounting Pronouncements</a></td>
<td class="text"><p id="xdx_84A_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z7uUoNXYp8Kj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86B_zK9uuZOnU9Zc">Recently
Issued Accounting Pronouncements</span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
November 2024, the FASB issued ASU 2024-03 &#8220;Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation
Disclosures (Subtopic 220-40)&#8221;. The Board is issuing this Update to improve the disclosures about a public business entity&#8217;s
expenses and address requests from investors for more detailed information about the types of expenses (including purchases of inventory,
employee compensation, depreciation, amortization, and depletion) in commonly presented expense captions (such as cost of sales, SG&amp;A,
and research and development). The amendments in this Update are effective for annual reporting periods beginning after December 15,
2026, and interim reporting periods beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating
the potential effect of this ASU on its consolidated financial statements</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
December 2025, the FASB issued ASU 2025-11 &#8220;Interim Reporting (Topic 270)&#8221;. The Board is issuing amendments in this Update
to improve the guidance in Topic 270, Interim Reporting, by improving the navigability of the required interim disclosures and clarifying
when that guidance is applicable. The amendments also provide additional guidance on what disclosures should be provided in interim reporting
periods. The amendments in this Update are effective for interim reporting periods within annual reporting periods beginning after December
15, 2027, for public business entities and for interim reporting periods within annual reporting 3 periods beginning after December 15,
2028, for entities other than public business entities. Early adoption is permitted for all entities. The Company is currently evaluating
the potential effect of this ASU on its interim consolidated financial statements</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
November 2025, the FASB issued ASU 2025-09 &#8220;Derivative and Hedging (Topic 815)&#8221;. Consistent with the original objective of
Update 2017-12, the objective of this Update is to more closely align hedge accounting with the economics of an entity&#8217;s risk management
activities. The amendments included in the five issues addressed in this Update are intended to better reflect those strategies in financial
reporting by enabling entities to achieve and maintain hedge accounting for highly effective economic hedges of forecasted transactions.
The five issues addressed are: Issue 1: Similar Risk Assessment for Cash Flow Hedges, Issue 2: Hedging Forecasted Interest Payments on
Choose-Your-Rate Debt Instruments, Issue 3: Cash Flow Hedges of Nonfinancial Forecasted Transactions, Issue 4: Net Written Options as
Hedging Instruments and Issue 5: Foreign-Currency-Denominated Debt Instrument as Hedging Instrument and Hedged Item (Dual Hedge). For
public business entities, the amendments in this Update are effective for annual reporting periods beginning after December 15, 2026,
and interim periods within those annual reporting periods. The Company is currently evaluating the potential effect of this ASU on its
consolidated financial statements.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
September 2025, the FASB issued ASU 2025-06 &#8220;Intangibles-Goodwill and other-Internal-Use Software (Subtopic 350-40)&#8221;. The
Board is issuing this Update to modernize the accounting for software costs that are accounted for under Subtopic 350-40, Intangibles&#8212;Goodwill
and Other&#8212;Internal-Use Software (referred to as &#8220;internal-use software&#8221;). Feedback from preparer and practitioner stakeholders
on the 2021 FASB Invitation to Comment, Agenda Consultation, indicated that the accounting for software costs should be a top priority
for the Board. Considering this feedback, the Board decided to make targeted improvements to Subtopic 350-40 to increase the operability
of the recognition guidance considering different methods of software development. The amendments in this Update are effective for all
entities for annual reporting periods beginning after December 15, 2027, and interim reporting periods 4 within those annual reporting
periods. Early adoption is permitted as of the beginning of an annual reporting period. The Company is currently evaluating the potential
effect of this ASU on its consolidated financial statements.</span></p>

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

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



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

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Recovery Of Previously Paid Import Tariffs [Policy Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for its derivative instruments and hedging activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479693/815-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8C<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4F<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/815/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(n))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExtendedProductWarrantyPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for extended product warranties and other guarantee contracts including the methodology for measuring the liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExtendedProductWarrantyPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of Product Warranty Liability</a></td>
<td class="text"><p id="xdx_890_eus-gaap--ScheduleOfProductWarrantyLiabilityTableTextBlock_zlP2fhss76wi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes in the product warranty liability for the six months ended June 30, 2026, are:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zTvqIZrikBmb" style="display: none">Schedule
of Product Warranty Liability</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_494_20260101__20260630_zzNKflqq1Ifi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20250101__20250630_zhCm0PRRTKT8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iS_pn3n3_znjD6g3tfZ31" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Balance at beginning of period</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">363</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0762">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--StandardProductWarrantyAccrualWarrantiesIssued_pn3n3_zTTjhMO6YE96" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Accruals for product warranties issued during period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">550</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">570</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--StandardProductWarrantyAccrualPayments_iN_pn3n3_di_zWPvdmPUf28h" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Reductions for payments made under product warranties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(610</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(279</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iE_pn3n3_zcfkKXnHHTmh" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance at end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">303</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">291</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisitions (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract', window );"><strong>Business Combination, Asset Acquisition, Transaction between Entities under Common Control, and Joint Venture Formation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock', window );">Schedule of Purchase Price Allocation Consideration Transferred</a></td>
<td class="text"><p id="xdx_89E_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zvbP8SSBwZn8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the purchase price allocation of the total consideration transferred:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zYcHFEAfGZU3" style="display: none">Schedule
of Purchase Price Allocation Consideration Transferred</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold">Consideration Transferred:</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Total purchase price</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_pn3n3_c20260101__20260630_zjP6750rIIye" style="width: 16%; text-align: right" title="Total purchase price">10,429</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold">Recognized amounts of identifiable assets acquired and liabilities assumed:</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20260630__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember_ztKDiCL1h5tc" style="border-bottom: Black 1pt solid; text-align: center">Preliminary<br/>
 Purchase<br/>
 Price<br/>
 Allocation</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260630__srt--RestatementAxis__srt--RevisionOfPriorPeriodReclassificationAdjustmentMember_zV6MEDdmNz89" style="border-bottom: Black 1pt solid; text-align: center">Measurement<br/>
 Period<br/>
 Adjustments</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260630_zQsXFEEZBIfg" style="border-bottom: Black 1pt solid; text-align: center">Adjusted<br/>
 Purchase<br/>
 Price<br/>
 Allocation</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pn3n3_znYefwClbKl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Cash and equivalents</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0795">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0796">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0797">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_pn3n3_zBHTHkbsf3Hk" style="vertical-align: bottom; background-color: White">
    <td style="width: 52%; text-align: left">Accounts Receivable</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">4,814</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0800">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">4,814</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_pn3n3_zAMMc7NFsTF1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other Current Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">585</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0804">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">585</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_pn3n3_ziU0wsWXlLPd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Property, plant, and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">826</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0808">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">826</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_iI_pn3n3_ztTg17U7N4p9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Trade Name</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">170</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0812">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">170</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_iI_pn3n3_zOYNKy2thvU8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract Backlog</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">670</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0816">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">670</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_iI_pn3n3_znaucc7zkVi7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptance and FBC permits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,260</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0820">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,260</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iI_pn3n3_zv7AqmO8Vi45" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Right-of-use assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,192</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(555</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">637</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pn3n3_di_zWDIb2Fkzvo6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Account payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(2,890</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0828">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(2,890</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_iI_pn3n3_zvzMbeStHU6e" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Accrued expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(81</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0832">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(81</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_iI_pn3n3_zz0qhELdTuL6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Service revenue deposit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(518</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">94</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(424</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_iI_pn3n3_zc4AAZAkjHme" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Lease liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,229</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">580</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(649</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_iI_pn3n3_z26G52jgV1b2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Billings in excess of cost and profit</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,987</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0844">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,987</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iTI_pn3n3_zBtw5vgxTAce" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Total identifiable net assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">3,812</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">119</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">3,931</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_pn3n3_zBhlthppEaw2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Goodwill</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">6,617</td><td style="font-weight: bold; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(119</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">6,498</td><td style="text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAndAssetAcquisitionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of business combination. Includes, but is not limited to, recognized asset and liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories, net (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventories</a></td>
<td class="text"><p id="xdx_899_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_z5gPgIy7lEIe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zAcvYPwPZzM6" style="display: none">Schedule of Inventories</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zAaUQgR6n373" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30, <br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20251231_z82EcYzyKmRa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31, <br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--InventoryRawMaterials_iI_pn3n3_maIGzzds_zuu6CJGzNYY" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Raw materials</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">201,805</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">152,174</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InventoryWorkInProcess_iI_pn3n3_maIGzzds_zxprYBe7L70l" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Work in process</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">31,268</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">27,467</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--InventoryFinishedGoods_iI_pn3n3_maIGzzds_zVvzASOSglil" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Finished goods</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,325</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,222</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--OtherInventoriesSpareParts_iI_pn3n3_maIGzzds_zZwEdqsixlk5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Spares and accessories</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">33,437</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">28,662</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--InventoryPackingMaterialGross_iI_pn3n3_maIGzzds_zXHB9z6162S1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Packing material</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,384</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,439</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InventoryGross_iTI_pn3n3_mtIGzzds_maINzh7N_zPCNvAd5jBwc" style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total Inventories, gross</span></td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">272,219</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">213,964</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--InventoryValuationReserves_iNI_pn3n3_di_msINzh7N_zqlLQgzvdhK1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Less: Inventory allowance</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(624</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(440</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pn3n3_mtINzh7N_zuLpBCNV2eo1" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total inventories, net</span></td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">271,595</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">213,524</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Schedule of Disaggregation by Revenue</a></td>
<td class="text"><p id="xdx_895_eus-gaap--DisaggregationOfRevenueTableTextBlock_zsC3zsQ1pnmg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company disaggregates its sales with customers by revenue recognition method for its <span id="xdx_900_eus-gaap--NumberOfReportableSegments_uSegment_c20260101__20260630_z6ICEuJJ27c7" style="display: none" title="Number of reportable segment">1</span>only segment, as the Company believes these factors
affect nature, amount, timing and uncertainty of the Company&#8217;s revenue and cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_ziFRdLhQyVU6" style="display: none">Schedule
of Disaggregation by Revenue</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_zn8aG6GqW9F9" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_z2jG2OAONSs2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_z7kVs0v4gvKf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_zjlA39fWrX8c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--FixedPriceContractsMember_z4CXt8Dzjch4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Fixed price contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">79,645</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">61,228</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">155,753</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">114,202</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ProductSalesMember_zf1YjCCrnCn6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Product sales</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">215,646</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">194,318</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">388,550</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">363,632</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_zw8Sg9JecUy6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">295,291</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">255,546</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">544,303</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">477,834</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock', window );">Schedule of Revenues Distribution By End Market</a></td>
<td class="text"><p id="xdx_89E_ecustom--ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_zVLhPcVI6SM5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents revenues broken down by market:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_zT6LyzY1fQOf" style="display: none">Schedule
of Revenues Distribution By End Market</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_zVr9I0TmHxVi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_zGJFHwY5Rl8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_zTG1cC6P8iV5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_zU371M67Az06" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ResidentialMember_z5vUE3sCNST1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Residential</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">126,499</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">109,598</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">214,969</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">198,527</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--CommercialMember_zg19wcpVOyf4" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">Commercial</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">168,792</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">145,948</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">329,334</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">279,307</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z2HsdPptAFp4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">295,291</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">255,546</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">544,303</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">477,834</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Schedule of Trade Accounts Receivable</a></td>
<td class="text"><p id="xdx_890_eus-gaap--ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_zSvMX8cghHh9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trade
accounts receivable consists of the following:</span></p>

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

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zaAWCVWwsc99" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zrSnZg4Bs25j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--AccountsReceivableGrossCurrent_iI_pn3n3_maARNCzXOy_zXoZOzT3LGyd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 1pt">Short-term trade accounts receivable</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1pt solid; width: 16%; text-align: right">292,134</td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1pt solid; width: 16%; text-align: right">243,768</td><td style="width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iNI_pn3n3_di_msARNCzXOy_zYbgDK9d8rrh" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: Allowance for credit losses</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(4,668</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(4,320</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--AccountsReceivableNetCurrent_iI_pn3n3_maARNzS1d_mtARNCzXOy_zHLWhw1T7gTa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total short-term trade accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">287,466</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">239,448</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--AccountsReceivableNetNoncurrent_iI_pn3n3_maARNzS1d_z2SOL2Ji4Ujf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Long term trade accounts</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">1,887</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">1,730</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AccountsReceivableNet_iTI_pn3n3_mtARNzS1d_zaCGkQorRvH7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt">Total trade accounts receivable</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">289,353</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">241,178</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock', window );">Schedule of Changes in Allowance for Doubtful Accounts Receivable</a></td>
<td class="text"><p id="xdx_897_ecustom--ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_zuSlLAAmYblb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes in the allowance for credit losses for the six months ended June 30, 2026, are:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BD_zNTpXnNhc3ca" style="display: none">Schedule of Changes in Allowance for Doubtful Accounts Receivable</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_490_20260101__20260630_z06WByG6mhqa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months&#160;ended<br/> June 30,
    2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iS_pn3n3_zUzZfrsMmKpc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 75%">Balance at beginning of period</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 21%; text-align: right">4,320</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--ProvisionForDoubtfulAccounts_pn3n3_zF6EvfGDASv6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Provisions for credit losses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,322</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--AllowanceForDoubtfulAccountsReceivableWriteOffs_iN_pn3n3_di_zLWFDfPsf2V1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Deductions and write-offs, net of foreign currency adjustment</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(974</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iE_pn3n3_zfOE7D8BUJd9" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Balance at end of period</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">4,668</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Schedule of Contract Assets and Liabilities</a></td>
<td class="text"><p id="xdx_89C_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zZeip9VBkFt2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below presents the components of net contract assets (liabilities):</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zVPZPUl2E1f1" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zZ8ERCuI3CU7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zf8Edftfkl0j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_maNCLAzcHD_zAoEhWnXvHgb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Contract assets &#8212; current</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">29,701</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">31,809</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_maNCLAzcHD_z96nqdKFt8wi" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Contract assets &#8212; non-current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">28,414</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">20,506</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerLiabilityCurrent_iNI_pn3n3_di_msNCLAzcHD_zUMZTTxkYmN" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Contract liabilities &#8212; current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(173,825</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(149,442</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iNI_pn3n3_di_msNCLAzcHD_z7ljzYOSQgU4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract liabilities &#8212; non-current</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(1,045</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(1,988</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_402_ecustom--NetContractLiabilitiesAssets_iTI_pn3n3_mtNCLAzcHD_zD8p6lZuEsQ6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Net contract liability</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(116,755</td><td style="font-weight: bold; text-align: left">)</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(99,115</td><td style="font-weight: bold; text-align: left">)</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByLiabilityClassAxis=TGLS_ContractAssetsMember', window );">Contract Assets [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Schedule of Contract Assets and Liabilities</a></td>
<td class="text"><p id="xdx_891_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractAssetsMember_zhQ7MUHsYUbl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of contract assets are presented in the table below:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_z8kWXE9QDAok" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_zoUBiGy3HgLi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zgcXC8WjluF7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--UnbilledReceivablesCurrent_iI_pn3n3_maCWCAGz5IH_zrD2TyXex3qh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Unbilled contract receivables, gross</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">6,421</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">9,084</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--ConstructionContractorReceivableRetainage_iI_pn3n3_maCWCAGz5IH_zy3ea9V6YIC" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt">Retainage</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">51,694</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">43,231</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ContractWithCustomerAssetGrossCurrent_iTI_pn3n3_mtCWCAGz5IH_zcJ9weFsqgol" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Total contract assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">58,115</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">52,315</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_ziQ2lf9forwa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: current portion</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">29,701</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">31,809</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_zoSiol6Aq68g" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Contract Assets &#8211; non-current</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">28,414</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">20,506</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByLiabilityClassAxis=TGLS_ContractLiabilitiesMember', window );">Contract Liabilities [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Schedule of Contract Assets and Liabilities</a></td>
<td class="text"><p id="xdx_89E_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractLiabilitiesMember_zFpKlaO5PLok" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of contract liabilities are presented in the table below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zGUCqnDUtWIj" style="display: none">Schedule of Contract Assets and Liabilities</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_499_20260630_ziRGyuM3YwEh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,<br/> 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20251231_zO6Dg5g3EsGh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31,<br/> 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_401_ecustom--BillingsInExcessOfCosts_iI_pn3n3_zccOCan23m5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Billings in excess of costs</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">122,407</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">104,376</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms_iI_pn3n3_zNkZz0xWejM3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Advances from customers on uncompleted contracts</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">52,463</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">47,054</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--ContractWithCustomerLiability_iTI_pn3n3_zQyaKNqiIDWj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Total contract liabilities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">174,780</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">151,430</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--ContractWithCustomerLiabilityCurrent_iI_pn3n3_zWF9p2jHZEre" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Less: current portion</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">173,825</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">149,442</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iI_pn3n3_z1ztisJRlDfb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Contract liabilities &#8211; non-current</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,045</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,988</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember', window );">Reportable Segment, Aggregation before Other Operating Segment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Geographic Information</a></td>
<td class="text"><p id="xdx_893_eus-gaap--ScheduleOfSegmentReportingInformationBySegmentTextBlock_hus-gaap--StatementBusinessSegmentsAxis__us-gaap--ReportableSegmentAggregationBeforeOtherOperatingSegmentMember_zLROoDif4zG3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents revenues broken down by geographical location:</span></p>

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

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20260401__20260630_z3KO7z92R3gc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20250401__20250630_znX09XTqZ01c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20260101__20260630_zWP1NOFzGNga" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20250101__20250630_z3rZBeMkzlSa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six months ended <br/> June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--CO_z5EmpHrky3J" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 36%">Colombia</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">6,154</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">6,621</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">13,673</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">13,035</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--US_zrio2RGQcPY" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">286,242</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">242,347</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">523,382</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">454,801</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__custom--OtherMember_zN4M3ML5NENg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Other</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,895</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">6,578</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">7,248</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">9,998</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z43kKRDNiWl3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Total Revenues</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">295,291</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">255,546</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">544,303</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">477,834</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of changes in allowance for doubtful accounts receivable [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Revenues Distribution By End Market [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of segment reporting. Includes, but is not limited to, reconciliation of reportable segment amount to corresponding consolidated total.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 34<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-34<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26A<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-25<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByLiabilityClassAxis=TGLS_ContractAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByLiabilityClassAxis=TGLS_ContractAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByLiabilityClassAxis=TGLS_ContractLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByLiabilityClassAxis=TGLS_ContractLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets and Goodwill (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Asset, Goodwill and Other [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Finite-Lived Intangible Assets, Net</a></td>
<td class="text"><p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zJEtlT6afeGg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B2_zgPqPWQP47U6" style="display: none">Schedule
of Finite-Lived Intangible Assets, Net</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30, 2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Gross</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Acc. Amort.</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Net</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Trade Names</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z3l7t0AkAre4" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross">170</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z03FerkIl98a" style="width: 12%; text-align: right" title="Accumulated Amortization">(50</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zKown4y1hhFl" style="width: 12%; text-align: right" title="Intangible assets, net">120</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Software and licenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zVU9uK6uFXdc" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">20,171</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zCyRpRBlTM1a" style="text-align: right" title="Accumulated Amortization">(11,326</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z1UjXtWGHmJ3" style="text-align: right" title="Intangible assets, net">8,845</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptances (NOAs), product designs and other intellectual property</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zMKzdVlqBoic" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">6,260</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zn4pRrSwNhxd" style="text-align: right" title="Accumulated Amortization">(1,826</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zppZY0Ycb2Gd" style="text-align: right" title="Intangible assets, net">4,434</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract Backlog</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_z6kxqXAHwYga" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross">670</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_ztsOolILwJOc" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization">(261</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zMEzQmVhbGN2" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net">409</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 1pt">Total</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630_zJocKqTQvUb3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Gross">27,271</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630_z2fnNRIGFtE3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Accumulated amortization">(13,463</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630_zgjVUUU7eLD3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Net">13,808</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">December 31, 2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Gross</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Acc. Amort.</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Net</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Trade Names</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zxBdjQeM9fP7" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross">170</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zK0QQZjfwQW4" style="width: 12%; text-align: right" title="Accumulated Amortization">(28</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zGmvYsyRWuv3" style="width: 12%; text-align: right" title="Intangible assets, net">142</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Software and licenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zWvOi1i7CdMe" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">17,217</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z7Qvkk0NnEqj" style="text-align: right" title="Accumulated Amortization">(10,138</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zDl4omBQPRO8" style="text-align: right" title="Intangible assets, net">7,079</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Notice of Acceptances (NOAs), product designs and other intellectual property</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zzWE20t4BOuh" style="text-align: right" title="Finite-Lived Intangible Assets, Gross">6,260</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zemG0a6RpqJ8" style="text-align: right" title="Accumulated Amortization">(1,043</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zh664U8T6lyb" style="text-align: right" title="Intangible assets, net">5,217</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Contract Backlog</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zebUkhamiKl4" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross">670</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zmSON1bHG1w7" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization">(149</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zYXuNTS0kx5k" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net">521</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-bottom: 1pt">Total</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231_zPUY59nSLvfc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Gross">24,317</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231_zoylhdMoerOe" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Accumulated amortization">(11,358</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">)</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231_z0U6rPUqYo26" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Net">12,959</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Finite Lived Intangible Assets Future Amortization Expense</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zgsekQ8ROY1k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
estimated aggregate amortization expense for each of the five succeeding years as of June 30, 2026, is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B1_zYIzH0kotrj" style="display: none">Schedule
of Finite Lived Intangible Assets Future Amortization Expense</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Year ending December 31,</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_497_20260630_zcet4z2JRQJ4">&#160;</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_iI_pn3n3_maFLIANz7hA_zxaJIsiZodok" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: center">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">2,079</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pn3n3_maFLIANz7hA_z64P5znWSvY3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,706</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pn3n3_maFLIANz7hA_zz6fU66FWiza" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,257</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pn3n3_maFLIANz7hA_zmD0V24KrTj5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,890</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_ecustom--FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_iI_pn3n3_maFLIANz7hA_zQiFSNevhO6b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1pt">Thereafter</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">2,876</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_pn3n3_mtFLIANz7hA_z7o5FlORlrd2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center; padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">13,808</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of finite-lived intangible asset. Excludes goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of estimated amortization expense for finite-lived intangible asset and capitalized cost for software to be sold, leased, or marketed, expected to be recognized for each of five succeeding fiscal years. Excludes goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtTableTextBlock', window );">Schedule of Long Term Debt</a></td>
<td class="text"><p id="xdx_89D_eus-gaap--ScheduleOfDebtTableTextBlock_zqroHGjSV2Zb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s debt is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zUAMA1IoEP13" style="display: none">Schedule
of Long Term Debt</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20260630_zBrwsD09L7C4" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2026</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_498_20251231_zPCw4xNhWhLe" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2025</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LineOfCredit_iI_pn3n3_maDICAz25p_zfDvXXBSUxak" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Revolving lines of credit</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">596</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">387</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--FinanceLeaseDebt_iI_pn3n3_maDICAz25p_zQrd7r0fvOl7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Finance lease</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,941</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">41</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--OtherLongTermDebtCurrent_iI_pn3n3_maDICAz25p_zJSuht5VM5U4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other current debt</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,628</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1150">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--SeniorSecuredCreditFacility_iI_pn3n3_maDICAz25p_zFCpW5VmIm9f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Senior Secured Credit Facility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">219,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">174,000</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredCostsCurrent_iNI_pn3n3_di_msDICAz25p_z7iX7LuTVuwf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Less: Deferred cost of financing</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,771</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,799</td><td style="padding-bottom: 1pt; text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--DebtInstrumentCarryingAmount_iTI_pn3n3_mtDICAz25p_zOpTgQg8J8o9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Total obligations under borrowing arrangements</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">225,394</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">171,629</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebtCurrent_iI_pn3n3_zm5L7pvndEFk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Less: Current portion of long-term debt and other current borrowings</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">6,156</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">427</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zQxvtU6anWL3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Long-term debt</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">219,238</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">171,202</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock', window );">Schedule of Interest Income Expenses net and deferred cost</a></td>
<td class="text"><p id="xdx_895_ecustom--ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_zSptocCGhae8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Interest
income (expense), net and deferred cost of financing is comprised of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B3_z8vdT2WE77Zk" style="display: none">Schedule
of Interest Income Expenses net and deferred cost</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260401__20260630_zcVHem3o8NPb" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20250401__20250630_zVXBRh38ofH2" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20260101__20260630_zlGnmU86udy2" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20250101__20250630_zUg2JWZ9t7n3" style="font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Three months ended</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Six months ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">June 30,</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Interest income (expense), net and deferred cost of financing:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--InterestExpense_zaRt1R0lv1L7" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Interest expense</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(3,429</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(1,078</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(5,957</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">(2,126</td><td style="width: 1%; text-align: left">)</td></tr>
  <tr id="xdx_405_ecustom--DeferredCostsOfFinancing_pn3n3_zFvOzCfn0f13" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred cost of financing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(155</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(272</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(307</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(555</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40B_ecustom--DerivativeFinancialInstrumentGain_pn3n3_zUtkCx1oGbkb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Derivative financial instrument loss</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">64</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1210">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(279</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1212">-</span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--InterestIncomeExpenseNetAndDeferredCostOfFinancing_pn3n3_zCyfhwPssEu" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Interest expense, net and deferred cost of financing:</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(3,520</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(1,350</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(6,543</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(2,681</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of Maturities of Long Term Debt</a></td>
<td class="text"><p id="xdx_89B_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zzUeOdw9MFh3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Maturities
of long-term debt and other current borrowings as of June 30, 2026, are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B6_zsvW6Jt2HlAf" style="display: none">Schedule
of Maturities of Long Term Debt</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_493_20260630_zXarcZsz5imh" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pn3n3_maLTDz5iw_z6Anyjgfa8O5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: center">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">6,156</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pn3n3_maLTDz5iw_z4XZ9VHLuvvj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">953</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pn3n3_maLTDz5iw_zpE5uMoL9Eel" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">848</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pn3n3_maLTDz5iw_zHpXBDOYxhJe" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">769</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_iI_pn3n3_maLTDz5iw_zyZ6FV50IIZh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 1pt">2030</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">219,439</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--LongTermDebt_iTI_pn3n3_mtLTDz5iw_zEgtsOiRKiQd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: center; padding-bottom: 2.5pt">Total</td><td style="font-weight: bold; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right">228,165</td><td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Future Minimum Lease Payments</a></td>
<td class="text"><p id="xdx_899_eus-gaap--FinanceLeaseLiabilityMaturityTableTextBlock_z7a8ivTHQip" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Future
minimum lease payments for the years ended June 30, of each year are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zKECQKN054Oh" style="display: none">Schedule of Future Minimum Lease Payments</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_49B_20260630_zQQZ7DEYBikh" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pn3n3_zWBhkFopt9g2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left">2026</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">1,078</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearTwo_iI_pn3n3_zhrEp3LZ9gv7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,060</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearThree_iI_pn3n3_z6tmBx8N7AVj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">2028</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">917</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearFour_iI_pn3n3_z3Gl9HXjabKl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">2029</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">804</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_ecustom--FinanceLeaseLiabilityPaymentsDueAfterYearFour_iI_pn3n3_zjJajX02UxC9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">2030 and thereafter</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">446</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--FinanceLeaseLiabilityPaymentsDue_iTI_pn3n3_z4SBllCmOa59" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Total undiscounted cashflows</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,304</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--FinanceLeaseLiabilityUndiscountedExcessAmount_iI_pn3n3_z2VnQPwvzcpa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Less: Imputed Interest</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">363</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--FinanceLeaseLiability_iTI_pn3n3_zcb1X4lTuAq3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Present value of lease liability</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,941</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Interest Income Expense Net and Deferred Cost [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturity and sinking fund requirement for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Financial Instruments and Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock', window );">Schedule of Fair Value of Foreign Currency Hedges</a></td>
<td class="text"><p id="xdx_89C_ecustom--ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_zqUc5XMzJdkl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of interest rate swap and foreign currency non-delivery option hedges is classified in the accompanying consolidated balance
sheets, as of June 30, 2026, as follows:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B9_zNSlVFjDWRva" style="display: none">Schedule
of Fair Value of Foreign Currency Hedges</span></span></span></span></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font: bold 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Derivative Assets</span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Derivative
Liabilities</span></td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Derivatives financial instruments</b></span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30, 2026</b></span></td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"><p style="margin-top: 0; margin-bottom: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June
30, 2026</b></span></p>

</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">under&#8239;Subtopic 815-20:</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Balance&#8239;Sheet&#8239;<br/>
 Location</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Balance&#8239;Sheet&#8239;<br/>
 Location</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Derivative instruments:</td><td>&#160;</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td style="border-left: Black 1pt solid">&#160;</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; width: 30%; text-align: left">Interest Rate Swap Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 18%; text-align: left">Other current assets</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zaUmP6QpA11j" style="width: 11%; text-align: right" title="Total derivative assets">787</td><td style="width: 1%; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; width: 2%">&#160;</td>
    <td style="width: 18%; text-align: left">Accrued liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 11%; text-align: right"><span id="xdx_90E_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zlRListcWqT5" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1309">-</span></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt; padding-left: 10pt; text-align: left">foreign currency non-delivery forwards</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zVGZT5gRNRGl" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets">232</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span id="xdx_90B_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zQiA7h2b85ec" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1313">-</span></span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt; padding-left: 20pt; text-align: left">Total derivative instruments</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">Total derivative assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630_ze5nsOc59g97" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets">1,019</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-left: Black 1pt solid; padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">Total derivative liabilities</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><span id="xdx_907_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630_zGiNFFfYWONk" title="Total derivative liabilities"><span style="-sec-ix-hidden: xdx2ixbrl1317">-</span></span></td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table>


<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock', window );">Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended</a></td>
<td class="text"><p id="xdx_890_eus-gaap--ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_zCFaUDcykf2h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents the gains (losses) on derivative financial instruments, and their classifications within the accompanying consolidated
financial statements, for the three months ended June 30, 2026, and 2025:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;&#160;<span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zdzfpWTf99e9" style="display: none">Schedule
of Gains (Losses) on Derivative Financial Instruments quarter ended</span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives in Cash Flow Hedging Relationships</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss)</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Location of Gain or (Loss) Reclassified from Accumulated</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss) Reclassified from</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Recognized in earnings on</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">OCI (Loss) into</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">OCI (Loss) into Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Three Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 30%; text-align: left">Interest Rate Swap and foreign currency non-delivery forwards Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zP5nOAyQKBzd" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">1,808</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_983_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zlBcyxfrqqY2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">748</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 20%; text-align: center">Interest income (expense), net and deferred cost of financing and operating revenues </td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zzGtsYyOiKU2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"><span style="-sec-ix-hidden: xdx2ixbrl1329">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zsyc1vE020Hh" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">1,250</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives in Cash Flow Hedging Relationships</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Amount of Gain or (Loss)</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Location of Gain or (Loss) Reclassified from Accumulated</td><td>&#160;</td>
    <td colspan="6" style="text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Amount of Gain or (Loss)</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Reclassified from</b></span></p></td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Recognized in earnings on</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">OCI (Loss) into</td><td style="font-weight: bold">&#160;</td>
    <td colspan="6" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Derivatives</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Income</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">OCI (Loss) into Income</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">Six Months Ended</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center">&#160;</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 30%; text-align: left">Interest Rate Swap and foreign currency non-delivery forwards Contracts</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_981_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z9lP0eoyU03d" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">2,782</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z2iOOdpiIIUg" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">148</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 20%; text-align: center">Interest income (expense), net and deferred cost of financing and operating revenues</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zfi2A4MgNjqc" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"><span style="-sec-ix-hidden: xdx2ixbrl1337">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_z58G94oUeftf" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives">2,242</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock', window );">Schedule of Fair Value and Carrying Amounts of Long Term Debt</a></td>
<td class="text"><p id="xdx_894_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zLrtg6dUrum5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the fair value and carrying amounts of our long-term debt:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zEKGSrwYzX1f" style="display: none">Schedule
of Fair Value and Carrying Amounts of Long Term Debt</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_492_20260630_z37RJ0XB0yz7" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2026</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49A_20251231_z9Xw1wFjWFgc" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>December 31,</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>2025</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LongTermDebtFairValue_iI_pn3n3_zKa13dL4QzEk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Fair Value</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">215,180</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">170,727</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zSzgwgew1Z2j" style="vertical-align: bottom; background-color: White">
    <td>Carrying Value</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">219,238</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">171,202</td><td style="text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Fair Value Of Foreign Currency Hedges [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDebtInstrumentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-8<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-7<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-6<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtInstrumentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CC<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CC<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4E<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of Components of Income Tax Expense</a></td>
<td class="text"><p id="xdx_892_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z7mUdjs4Lt8j" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of income tax expense are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B8_z4gM7pD2HG9d" style="display: none">Schedule
of Components of Income Tax Expense</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49C_20260401__20260630_zEspyM4OFgX5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49F_20250401__20250630_zLkuv8gz2VK1" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49D_20260101__20260630_zlxANL5NSlpj" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49E_20250101__20250630_zeNqz8ppTE7e" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td>&#160;</td><td>&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Current income tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_z41yymLJPOi3" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">United States</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(7,327</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(8,286</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(14,417</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">(11,920</td><td style="width: 1%; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zmVsqKoi08Lj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Colombia</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,208</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(10,329</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,571</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(21,881</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--PA_z9I4b4oXbmX" style="vertical-align: bottom; background-color: White">
    <td>Panama</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1363">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(1</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1365">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_zNPEy9wDym1i" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total current income tax</span></td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(8,535</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(18,616</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(20,988</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(33,806</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Deferred income Tax</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_zJ05AKjQ8ys4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,130</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">58</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(994</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(1,355</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zWiToKdm44O2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Colombia</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,430</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">410</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(4,015</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(647</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_zq8YfYmmsED7" style="vertical-align: bottom; background-color: White">
    <td><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Total deferred income tax</span></td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,560</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">468</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(5,009</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,002</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--IncomeTaxExpenseBenefit_iN_pn3n3_di_z3SFonrzfKo7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total income provision</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(14,095</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(18,148</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(25,997</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(35,808</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateContinuingOperations_pid_dp_uPure_zHwyudi7p41" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Effective tax rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">36.5</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">29.2</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">31.5</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">29.3</td><td style="text-align: left">%</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Parties (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsAbstract', window );"><strong>Related Party Transactions [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock', window );">Schedule of Related Parties</a></td>
<td class="text"><p id="xdx_899_eus-gaap--ScheduleOfRelatedPartyTransactionsTableTextBlock_zzJMawkfBaF9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following is a summary of assets, liabilities, and income transactions with all related parties:</span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_498_20260630_zB8VoKaWW8sc" style="font-weight: bold; text-align: center">June 30,</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_49C_20251231_zU10sDXTopL8" style="font-weight: bold; text-align: center">December 31,</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Due from related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYa5dHayodYf" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left">Alutrafic Led SAS</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">644</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">525</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z4l9SCPOkpUf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Studio Avanti SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">427</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">403</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z8trKFIYDuti" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Prisma-Glass LLC</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">404</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvomiWAZGspj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Due from other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">645</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">670</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zLueAwP7eWHe" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1pt">Total due from related parties</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">2,075</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">2,002</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Due to related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zu73D6ZhCK65" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Vidrio Andino</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,131</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,717</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zkI2AAZtLwCd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1pt">Due to other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">3,764</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">5,164</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUe6z8kJ80Rl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-bottom: 1pt">Total due to related parties</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">8,895</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">10,881</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock', window );">Schedule of Sale to Related Parties</a></td>
<td class="text"><p id="xdx_89F_ecustom--ScheduleOfSaleToRelatedPartyTableTextBlock_zCetpNutn8Ck" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zCZwS14O0JO3" style="display: none">Schedule of Sale to Related Parties</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20260401__20260630_zIx960hdwuSl" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20250401__20250630_zTQAq5li7D82" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_497_20260101__20260630_z1LrHc7hthgf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" id="xdx_495_20250101__20250630_zY4yLST7hgV7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>June 30,</b></span></p></td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2026</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Sales to related parties:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKAbpRw7IGM2" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Prisma Glass LLC</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">448</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">785</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">604</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">1,168</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z6AQXZpNWKX4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Alutrafic Led SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">276</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">230</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">569</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">587</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYOZkxWsFxtf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Studio Avanti SAS</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">51</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">294</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">145</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">532</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--SalesToOtherRelatedPartiesMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zyzFB6Gny5H3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt">Sales to other related parties</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(55</td><td style="padding-bottom: 1pt; text-align: left">)</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">93</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">23</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">130</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zBnTFvAnmPTi" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1pt"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales to related parties</span></td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">720</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">1,401</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">1,341</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right">2,417</td><td style="padding-bottom: 1pt; font-weight: bold; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Sale To Related Party [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of related party transactions. Examples of related party transactions include, but are not limited to, transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shareholders&#8217; Equity (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2026</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Earnings Per Share, Basic and Diluted</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zwMLxdiSYyfc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth the computation of the basic and diluted earnings per share for the three and six months ended June 30, 2026
and 2025:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z8VjupJubIij" style="display: none">Schedule of Earnings Per Share, Basic and Diluted</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></span></span></span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_492_20260401__20260630_z19WjrnNjtse" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_492_20250401__20250630_zUgwseg41kU6" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_498_20260101__20260630_zVuScfm19hGk" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" id="xdx_491_20250101__20250630_zEPKjPo0IOzc" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Three
months ended June 30,</b></span></p></td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-right: 0pt; margin-left: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Six
months ended June 30,</b></span></p></td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2026</td><td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom">&#160;</td><td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom">2025</td><td style="padding-bottom: 1pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left">Numerator for basic and diluted earnings per share</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--NetIncomeLoss_pn3n3_zMqOZExWCnbe" style="vertical-align: bottom; background-color: White">
    <td style="width: 36%; text-align: left">Net Income attributable to parent</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">24,555</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">44,083</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">56,446</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">86,272</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold">Denominator</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zc4zDLzjyfuj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1pt">Denominator for basic earnings per ordinary share - weighted average shares outstanding</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">44,364,801</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">46,988,155</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">44,497,265</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">46,989,650</td><td style="padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--EffectOfDilutiveSecuritiesAndStockDividend_pid_zhuPwpmVUF1j" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Effect of dilutive securities and stock dividend</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zO6yER9Llm29" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Denominator for diluted earnings per ordinary share - weighted average shares outstanding</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">44,364,801</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">46,988,155</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">44,497,265</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">46,989,650</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--EarningsPerShareBasic_pid_zXyHF1VeU2e8" style="vertical-align: bottom; background-color: White">
    <td>Basic earnings per ordinary share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.55</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.94</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.27</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.84</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--EarningsPerShareDiluted_pid_zxmUn3cZOrl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted earnings per ordinary share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.55</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">0.94</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.27</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.84</td><td style="text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Product Warranty Liability (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">$ 363<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued', window );">Accruals for product warranties issued during period</a></td>
<td class="nump">550<span></span>
</td>
<td class="nump">570<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPayments', window );">Reductions for payments made under product warranties</a></td>
<td class="num">(610)<span></span>
</td>
<td class="num">(279)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Balance at end of period</a></td>
<td class="nump">$ 303<span></span>
</td>
<td class="nump">$ 291<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2026</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyDescription', window );">Product warranties description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">The
Company offers product warranties in connection with the sale and installation of its products that are competitive in the markets in
which the products are sold. Standard warranties vary based upon the product and service offered and durations are generally from five
to ten years for architectural glass, curtain wall, laminated and tempered glass, window and door products.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_RecoveryOfPreviouslyPaidImportTariffs', window );">Recovery of previously paid import tariffs</a></td>
<td class="nump">$ 1,876<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_RecoveryOfPreviouslyPaidImportTariffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Recovery of previously paid import tariffs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_RecoveryOfPreviouslyPaidImportTariffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Describes the nature of the product warranty, including the approximate term of the product warranty, how the product warranty arose, and the events or circumstances that would require the warrantor to perform under the product warranty.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Purchase Price Allocation Consideration Transferred (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2026 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Total purchase price</a></td>
<td class="nump">$ 10,429<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash and equivalents</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts Receivable</a></td>
<td class="nump">4,814<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other Current Assets</a></td>
<td class="nump">585<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant, and equipment</a></td>
<td class="nump">826<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Trade Name</a></td>
<td class="nump">170<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog', window );">Contract Backlog</a></td>
<td class="nump">670<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits', window );">Notice of Acceptance and FBC permits</a></td>
<td class="nump">6,260<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets', window );">Right-of-use assets</a></td>
<td class="nump">637<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Account payable</a></td>
<td class="num">(2,890)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense', window );">Accrued expenses</a></td>
<td class="num">(81)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit', window );">Service revenue deposit</a></td>
<td class="num">(424)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities', window );">Lease liabilities</a></td>
<td class="num">(649)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit', window );">Billings in excess of cost and profit</a></td>
<td class="num">(5,987)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total identifiable net assets</a></td>
<td class="nump">3,931<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Goodwill</a></td>
<td class="nump">6,498<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RestatementAxis=srt_ScenarioPreviouslyReportedMember', window );">Previously Reported [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash and equivalents</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts Receivable</a></td>
<td class="nump">4,814<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other Current Assets</a></td>
<td class="nump">585<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant, and equipment</a></td>
<td class="nump">826<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Trade Name</a></td>
<td class="nump">170<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog', window );">Contract Backlog</a></td>
<td class="nump">670<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits', window );">Notice of Acceptance and FBC permits</a></td>
<td class="nump">6,260<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets', window );">Right-of-use assets</a></td>
<td class="nump">1,192<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Account payable</a></td>
<td class="num">(2,890)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense', window );">Accrued expenses</a></td>
<td class="num">(81)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit', window );">Service revenue deposit</a></td>
<td class="num">(518)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities', window );">Lease liabilities</a></td>
<td class="num">(1,229)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit', window );">Billings in excess of cost and profit</a></td>
<td class="num">(5,987)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total identifiable net assets</a></td>
<td class="nump">3,812<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Goodwill</a></td>
<td class="nump">6,617<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RestatementAxis=srt_RevisionOfPriorPeriodReclassificationAdjustmentMember', window );">Revision of Prior Period, Reclassification, Adjustment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash and equivalents</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts Receivable</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Other Current Assets</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant, and equipment</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Trade Name</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog', window );">Contract Backlog</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits', window );">Notice of Acceptance and FBC permits</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets', window );">Right-of-use assets</a></td>
<td class="num">(555)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Account payable</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense', window );">Accrued expenses</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit', window );">Service revenue deposit</a></td>
<td class="nump">94<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities', window );">Lease liabilities</a></td>
<td class="nump">580<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit', window );">Billings in excess of cost and profit</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total identifiable net assets</a></td>
<td class="nump">119<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Goodwill</a></td>
<td class="num">$ (119)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed billings in excess of cost and profit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed contract backlog.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed current liabilities accrued expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lease liabilities assumed in business combination and recognized at acquisition date, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed notice of acceptance and permits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities assumed service revenue deposit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset acquired in business combination and recognized at acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalent acquired in business combination and recognized at acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset acquired in business combination and recognized at acquisition date, classified as other and current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of receivable acquired in business combination and recognized at acquisition date, classified as current. Includes, but is not limited to, receivable from customer for product and service.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accounts payable assumed in business combination and recognized at acquisition date, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of identifiable finite-lived intangible asset acquired in business combination and recognized at acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset acquired in excess of (less than) liability assumed in business combination and recognized at acquisition date. Excludes goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of property, plant, and equipment acquired in business combination and recognized at acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset acquired in excess of (less than) liability assumed plus goodwill in business combination and recognized at acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RestatementAxis=srt_ScenarioPreviouslyReportedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RestatementAxis=srt_ScenarioPreviouslyReportedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RestatementAxis=srt_RevisionOfPriorPeriodReclassificationAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RestatementAxis=srt_RevisionOfPriorPeriodReclassificationAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisitions (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Apr. 03, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Combination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts', window );">Acquisition-related costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 588<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Combination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Intangible asset, finite-lived, useful life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Combination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Intangible asset, finite-lived, useful life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=TGLS_ContiglassAssetAcquisitionLLCMember', window );">Contiglass Asset Acquisition LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Combination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationPriceOfAcquisitionExpected', window );">Purchase price for acquisition</a></td>
<td class="nump">$ 10,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts', window );">Acquisition-related costs</a></td>
<td class="nump">6,588<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_WorkingCapitalAdjustment', window );">Working capital adjustment</a></td>
<td class="nump">$ 253<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_WorkingCapitalAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Working capital adjustment</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_WorkingCapitalAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction cost incurred to effect business combination. Excludes separately recognized transaction and indirect cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-47<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-5<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-3<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-4A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-4<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-4A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-4A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-4<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br><br>Reference 37: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationPriceOfAcquisitionExpected">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Purchase price of expected business acquisition prior to consideration being transferred. Excludes asset acquisition.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationPriceOfAcquisitionExpected</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible asset, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=TGLS_ContiglassAssetAcquisitionLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=TGLS_ContiglassAssetAcquisitionLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterials', window );">Raw materials</a></td>
<td class="nump">$ 201,805<span></span>
</td>
<td class="nump">$ 152,174<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcess', window );">Work in process</a></td>
<td class="nump">31,268<span></span>
</td>
<td class="nump">27,467<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Finished goods</a></td>
<td class="nump">3,325<span></span>
</td>
<td class="nump">3,222<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherInventoriesSpareParts', window );">Spares and accessories</a></td>
<td class="nump">33,437<span></span>
</td>
<td class="nump">28,662<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_InventoryPackingMaterialGross', window );">Packing material</a></td>
<td class="nump">2,384<span></span>
</td>
<td class="nump">2,439<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryGross', window );">Total Inventories, gross</a></td>
<td class="nump">272,219<span></span>
</td>
<td class="nump">213,964<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryValuationReserves', window );">Less: Inventory allowance</a></td>
<td class="num">(624)<span></span>
</td>
<td class="num">(440)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventories, net</a></td>
<td class="nump">$ 271,595<span></span>
</td>
<td class="nump">$ 213,524<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_InventoryPackingMaterialGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Reflects Gross amount, as of the balance sheet date of packing materials.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_InventoryPackingMaterialGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterials</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryValuationReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of valuation reserve for inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryValuationReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherInventoriesSpareParts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount of components of assembled products that can be sold directly or indirectly through sales of assembled products.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherInventoriesSpareParts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Disaggregation by Revenue (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Jun. 30, 2026 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2026 </div>
<div>USD ($) </div>
<div>Segment</div>
</th>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of reportable segment | Segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">$ 295,291<span></span>
</td>
<td class="nump">$ 255,546<span></span>
</td>
<td class="nump">$ 544,303<span></span>
</td>
<td class="nump">$ 477,834<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=TGLS_FixedPriceContractsMember', window );">Fixed Price Contracts [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">79,645<span></span>
</td>
<td class="nump">61,228<span></span>
</td>
<td class="nump">155,753<span></span>
</td>
<td class="nump">114,202<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=TGLS_ProductSalesMember', window );">Product Sales [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">$ 215,646<span></span>
</td>
<td class="nump">$ 194,318<span></span>
</td>
<td class="nump">$ 388,550<span></span>
</td>
<td class="nump">$ 363,632<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=TGLS_FixedPriceContractsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=TGLS_FixedPriceContractsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=TGLS_ProductSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=TGLS_ProductSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Geographic Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">$ 295,291<span></span>
</td>
<td class="nump">$ 255,546<span></span>
</td>
<td class="nump">$ 544,303<span></span>
</td>
<td class="nump">$ 477,834<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CO', window );">COLOMBIA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">6,154<span></span>
</td>
<td class="nump">6,621<span></span>
</td>
<td class="nump">13,673<span></span>
</td>
<td class="nump">13,035<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">286,242<span></span>
</td>
<td class="nump">242,347<span></span>
</td>
<td class="nump">523,382<span></span>
</td>
<td class="nump">454,801<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=TGLS_OtherMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">$ 2,895<span></span>
</td>
<td class="nump">$ 6,578<span></span>
</td>
<td class="nump">$ 7,248<span></span>
</td>
<td class="nump">$ 9,998<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CO">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CO</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=TGLS_OtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=TGLS_OtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Revenues Distribution By End Market (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">$ 295,291<span></span>
</td>
<td class="nump">$ 255,546<span></span>
</td>
<td class="nump">$ 544,303<span></span>
</td>
<td class="nump">$ 477,834<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=TGLS_ResidentialMember', window );">Residential [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">126,499<span></span>
</td>
<td class="nump">109,598<span></span>
</td>
<td class="nump">214,969<span></span>
</td>
<td class="nump">198,527<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=TGLS_CommercialMember', window );">Commercial [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Total Revenues</a></td>
<td class="nump">$ 168,792<span></span>
</td>
<td class="nump">$ 145,948<span></span>
</td>
<td class="nump">$ 329,334<span></span>
</td>
<td class="nump">$ 279,307<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=TGLS_ResidentialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=TGLS_ResidentialMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=TGLS_CommercialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=TGLS_CommercialMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Trade Accounts Receivable (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Operating revenues:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableGrossCurrent', window );">Short-term trade accounts receivable</a></td>
<td class="nump">$ 292,134<span></span>
</td>
<td class="nump">$ 243,768<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Less: Allowance for credit losses</a></td>
<td class="num">(4,668)<span></span>
</td>
<td class="num">(4,320)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Total short-term trade accounts receivable</a></td>
<td class="nump">287,466<span></span>
</td>
<td class="nump">239,448<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetNoncurrent', window );">Long term trade accounts</a></td>
<td class="nump">1,887<span></span>
</td>
<td class="nump">1,730<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Total trade accounts receivable</a></td>
<td class="nump">$ 289,353<span></span>
</td>
<td class="nump">$ 241,178<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableGrossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477802/946-310-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(5)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479196/954-310-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Operating revenues:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Balance at beginning of period</a></td>
<td class="nump">$ 4,320<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Provisions for credit losses</a></td>
<td class="nump">1,322<span></span>
</td>
<td class="nump">$ 987<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs', window );">Deductions and write-offs, net of foreign currency adjustment</a></td>
<td class="num">(974)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Balance at end of period</a></td>
<td class="nump">$ 4,668<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of direct write-downs of accounts receivable charged against the allowance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Contract Assets and Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Operating revenues:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Less: current portion</a></td>
<td class="nump">$ 29,701<span></span>
</td>
<td class="nump">$ 31,809<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetNoncurrent', window );">Contract Assets &#8211; non-current</a></td>
<td class="nump">28,414<span></span>
</td>
<td class="nump">20,506<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities &#8212; current</a></td>
<td class="num">(173,825)<span></span>
</td>
<td class="num">(149,442)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Contract liabilities &#8212; non-current</a></td>
<td class="num">(1,045)<span></span>
</td>
<td class="num">(1,988)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_NetContractLiabilitiesAssets', window );">Net contract liability</a></td>
<td class="num">(116,755)<span></span>
</td>
<td class="num">(99,115)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnbilledReceivablesCurrent', window );">Unbilled contract receivables, gross</a></td>
<td class="nump">6,421<span></span>
</td>
<td class="nump">9,084<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConstructionContractorReceivableRetainage', window );">Retainage</a></td>
<td class="nump">51,694<span></span>
</td>
<td class="nump">43,231<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetGrossCurrent', window );">Total contract assets</a></td>
<td class="nump">58,115<span></span>
</td>
<td class="nump">52,315<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_BillingsInExcessOfCosts', window );">Billings in excess of costs</a></td>
<td class="nump">122,407<span></span>
</td>
<td class="nump">104,376<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms', window );">Advances from customers on uncompleted contracts</a></td>
<td class="nump">52,463<span></span>
</td>
<td class="nump">47,054<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Total contract liabilities</a></td>
<td class="nump">174,780<span></span>
</td>
<td class="nump">151,430<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Less: current portion</a></td>
<td class="nump">173,825<span></span>
</td>
<td class="nump">149,442<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Contract liabilities &#8211; non-current</a></td>
<td class="nump">$ 1,045<span></span>
</td>
<td class="nump">$ 1,988<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_BillingsInExcessOfCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Liability attributable to (i) billings in excess of costs under the percentage of completion contract accounting method representing the difference between contractually invoiced amounts (billings) and revenue recognized based, for example, on costs incurred to estimated total costs at period end or (ii) contractually invoiced amounts (billings) in excess of costs incurred and accumulated under the completed contract accounting method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_BillingsInExcessOfCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_NetContractLiabilitiesAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net contract liabilities assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_NetContractLiabilitiesAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConstructionContractorReceivableRetainage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of right to consideration in exchange for good or service transferred to customer withheld under retainage provision in long-term contract or program when right to consideration is unconditional.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 910<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482546/910-10-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(c)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConstructionContractorReceivableRetainage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetGrossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of advances received from customers under long-term contracts which have been offset against inventories accounts at the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(d)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnbilledReceivablesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnbilledReceivablesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2028</div></th>
<th class="th"><div>Dec. 31, 2027</div></th>
<th class="th"><div>Dec. 31, 2026</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Sales related to contract liabilities</a></td>
<td class="nump">$ 11,336<span></span>
</td>
<td class="nump">$ 10,314<span></span>
</td>
<td class="nump">$ 23,274<span></span>
</td>
<td class="nump">$ 16,858<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="nump">$ 884,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 884,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationPercentage', window );">Performance obligation, percentage</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementScenarioAxis=srt_ScenarioForecastMember', window );">Forecast [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 165,200<span></span>
</td>
<td class="nump">$ 409,800<span></span>
</td>
<td class="nump">$ 309,200<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized 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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -SubTopic 10<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=srt_ScenarioForecastMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=srt_ScenarioForecastMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Finite-Lived Intangible Assets, Net (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Intangible Asset, Finite-Lived [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, Gross</a></td>
<td class="nump">$ 27,271<span></span>
</td>
<td class="nump">$ 24,317<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Intangible assets, Accumulated amortization</a></td>
<td class="num">(13,463)<span></span>
</td>
<td class="num">(11,358)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, Net</a></td>
<td class="nump">13,808<span></span>
</td>
<td class="nump">12,959<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Trade Names [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Intangible Asset, Finite-Lived [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, Gross</a></td>
<td class="nump">170<span></span>
</td>
<td class="nump">170<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Intangible assets, Accumulated amortization</a></td>
<td class="num">(50)<span></span>
</td>
<td class="num">(28)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, Net</a></td>
<td class="nump">120<span></span>
</td>
<td class="nump">142<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_SoftwareAndLicensesMember', window );">Software and Licenses [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Intangible Asset, Finite-Lived [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, Gross</a></td>
<td class="nump">20,171<span></span>
</td>
<td class="nump">17,217<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Intangible assets, Accumulated amortization</a></td>
<td class="num">(11,326)<span></span>
</td>
<td class="num">(10,138)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, Net</a></td>
<td class="nump">8,845<span></span>
</td>
<td class="nump">7,079<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember', window );">Notice of Acceptances Product Designs and Intellectual Property [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Intangible Asset, Finite-Lived [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, Gross</a></td>
<td class="nump">6,260<span></span>
</td>
<td class="nump">6,260<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Intangible assets, Accumulated amortization</a></td>
<td class="num">(1,826)<span></span>
</td>
<td class="num">(1,043)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, Net</a></td>
<td class="nump">4,434<span></span>
</td>
<td class="nump">5,217<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_ContractBacklogMember', window );">Contract Backlog [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Intangible Asset, Finite-Lived [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, Gross</a></td>
<td class="nump">670<span></span>
</td>
<td class="nump">670<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Intangible assets, Accumulated amortization</a></td>
<td class="num">(261)<span></span>
</td>
<td class="num">(149)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, Net</a></td>
<td class="nump">$ 409<span></span>
</td>
<td class="nump">$ 521<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated amortization of finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482558/350-40-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization, of finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482558/350-40-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 928<br> -SubTopic 340<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478859/928-340-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482558/350-40-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-20<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-20<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 38<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-38<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 38<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-38<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 38<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-38<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 38<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-38<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 38<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-38<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 38<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-38<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 24: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 26: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-31<br><br>Reference 27: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 29<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-29<br><br>Reference 28: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 29<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-29<br><br>Reference 29: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-20<br><br>Reference 30: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-20<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-14<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-14<br><br>Reference 33: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-14<br><br>Reference 34: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-14<br><br>Reference 35: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479876/805-20-55-14<br><br>Reference 36: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-1<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_SoftwareAndLicensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_SoftwareAndLicensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_ContractBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=TGLS_ContractBacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Asset, Goodwill and Other [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">2026</a></td>
<td class="nump">$ 2,079<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2027</a></td>
<td class="nump">3,706<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2028</a></td>
<td class="nump">3,257<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2029</a></td>
<td class="nump">1,890<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree', window );">Thereafter</a></td>
<td class="nump">2,876<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 13,808<span></span>
</td>
<td class="nump">$ 12,959<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finite lived intangible assets amortization expense after year three.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for finite-lived intangible asset 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). Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for finite-lived intangible asset expected to be recognized in remainder of current fiscal year. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for finite-lived intangible asset 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). Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for finite-lived intangible asset 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). Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets and Goodwill (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Asset, Goodwill and Other [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted average amortization period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years 10 months 24 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization expense</a></td>
<td class="nump">$ 974<span></span>
</td>
<td class="nump">$ 645<span></span>
</td>
<td class="nump">$ 1,883<span></span>
</td>
<td class="nump">$ 950<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period of amortization for finite-lived intangible asset acquired in business combination, asset acquisition, and from joint venture formation, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482558/350-40-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-11<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-18<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-24<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -SubTopic 30<br> -Topic 350<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Supplier Finance Program (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems', window );"><strong>Debt Securities, Held-to-Maturity, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Trade accounts payable and accrued expenses</a></td>
<td class="nump">$ 178,854<span></span>
</td>
<td class="nump">$ 127,228<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember', window );">Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems', window );"><strong>Debt Securities, Held-to-Maturity, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Due to related parties</a></td>
<td class="nump">8,895<span></span>
</td>
<td class="nump">$ 10,881<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=TGLS_SupplierFinanceProgramMember', window );">Supplier Finance Program [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems', window );"><strong>Debt Securities, Held-to-Maturity, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProgramRightsObligationsCurrent', window );">Current liabilities</a></td>
<td class="nump">21,686<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Trade accounts payable and accrued expenses</a></td>
<td class="nump">21,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=TGLS_SupplierFinanceProgramMember', window );">Supplier Finance Program [Member] | Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems', window );"><strong>Debt Securities, Held-to-Maturity, Allowance for Credit Loss [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Due to related parties</a></td>
<td class="nump">$ 686<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-3D<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-3C<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProgramRightsObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligations related to rights to programming, including, but not limited to, feature films and episodic series, acquired under license agreements that will be paid within the next twelve months.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProgramRightsObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=TGLS_SupplierFinanceProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=TGLS_SupplierFinanceProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Long Term Debt (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">Revolving lines of credit</a></td>
<td class="nump">$ 596<span></span>
</td>
<td class="nump">$ 387<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FinanceLeaseDebt', window );">Finance lease</a></td>
<td class="nump">3,941<span></span>
</td>
<td class="nump">41<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLongTermDebtCurrent', window );">Other current debt</a></td>
<td class="nump">4,628<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_SeniorSecuredCreditFacility', window );">Senior Secured Credit Facility</a></td>
<td class="nump">219,000<span></span>
</td>
<td class="nump">174,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredCostsCurrent', window );">Less: Deferred cost of financing</a></td>
<td class="num">(2,771)<span></span>
</td>
<td class="num">(2,799)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Total obligations under borrowing arrangements</a></td>
<td class="nump">225,394<span></span>
</td>
<td class="nump">171,629<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Less: Current portion of long-term debt and other current borrowings</a></td>
<td class="nump">6,156<span></span>
</td>
<td class="nump">427<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt</a></td>
<td class="nump">$ 219,238<span></span>
</td>
<td class="nump">$ 171,202<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FinanceLeaseDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance lease debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FinanceLeaseDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_SeniorSecuredCreditFacility">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Senior secured credit facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_SeniorSecuredCreditFacility</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredCostsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of deferred costs capitalized at the end of the reporting period that are expected to be charged against earnings within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredCostsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt classified as other, payable within one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(13)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Interest Income Expenses net and deferred cost (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="num">$ (3,429)<span></span>
</td>
<td class="num">$ (1,078)<span></span>
</td>
<td class="num">$ (5,957)<span></span>
</td>
<td class="num">$ (2,126)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_DeferredCostsOfFinancing', window );">Deferred cost of financing</a></td>
<td class="num">(155)<span></span>
</td>
<td class="num">(272)<span></span>
</td>
<td class="num">(307)<span></span>
</td>
<td class="num">(555)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_DerivativeFinancialInstrumentGain', window );">Derivative financial instrument loss</a></td>
<td class="nump">64<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(279)<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing', window );">Interest expense, net and deferred cost of financing:</a></td>
<td class="num">$ (3,520)<span></span>
</td>
<td class="num">$ (1,350)<span></span>
</td>
<td class="num">$ (6,543)<span></span>
</td>
<td class="num">$ (2,681)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_DeferredCostsOfFinancing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred costs of financing</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_DeferredCostsOfFinancing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_DerivativeFinancialInstrumentGain">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Derivative financial instrument gain</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_DerivativeFinancialInstrumentGain</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Interest income expense net and deferred cost of financing</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest expense classified as operating and nonoperating. Includes, but is not limited to, cost of borrowing accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-24<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483013/835-20-50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Maturities of Long Term Debt (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jun. 30, 2026 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2026</a></td>
<td class="nump">$ 6,156<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2027</a></td>
<td class="nump">953<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2028</a></td>
<td class="nump">848<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2029</a></td>
<td class="nump">769<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive', window );">2030</a></td>
<td class="nump">219,439<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">$ 228,165<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Future Minimum Lease Payments (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jun. 30, 2026 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2026</a></td>
<td class="nump">$ 1,078<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo', window );">2027</a></td>
<td class="nump">1,060<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree', window );">2028</a></td>
<td class="nump">917<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour', window );">2029</a></td>
<td class="nump">804<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour', window );">2030 and thereafter</a></td>
<td class="nump">446<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDue', window );">Total undiscounted cashflows</a></td>
<td class="nump">4,304<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount', window );">Less: Imputed Interest</a></td>
<td class="nump">363<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Present value of lease liability</a></td>
<td class="nump">$ 3,941<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance lease liability payments due after year four.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.9-06)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 04, 2025</div></th>
<th class="th"><div>Sep. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Sep. 03, 2025</div></th>
<th class="th"><div>Sep. 30, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateDescription', window );">Loan maturity period description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">several weeks to 5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfDebt', window );">Repayment of debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,731<span></span>
</td>
<td class="nump">$ 4,103<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtWeightedAverageInterestRate', window );">Debt, weighted average interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.14%<span></span>
</td>
<td class="nump">5.14%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAsset', window );">Right-of-use assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,905<span></span>
</td>
<td class="nump">$ 3,905<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities', window );">Finance lease right of use asset included property, plant and equipment, and lease liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,941<span></span>
</td>
<td class="nump">3,941<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FinanceLeaseShortTermDebt', window );">Finance lease, short-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">932<span></span>
</td>
<td class="nump">932<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FinanceLeaseLongTermDebt', window );">Finance lease, long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,009<span></span>
</td>
<td class="nump">3,009<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization', window );">ROU asset amortization</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">306<span></span>
</td>
<td class="nump">564<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseInterestExpense', window );">Interest expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">43<span></span>
</td>
<td class="nump">68<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Cash paid for amounts included in the measurement of lease liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">702<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows', window );">Cash paid for amounts included in measurement of lease liabilities classified as operating cash flows</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">68<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows', window );">Cash paid for amounts included in measurement of lease liabilities classified as financing cash flows</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">634<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities', window );">Non-cash additions to ROU assets in exchange for lease liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,073<span></span>
</td>
<td class="nump">$ 3,073<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1', window );">Weighted-average remaining lease term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years 1 month 6 days<span></span>
</td>
<td class="text">4 years 1 month 6 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent', window );">Weighted-average discount rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.20%<span></span>
</td>
<td class="nump">4.20%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember', window );">Senior Secured Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 60,000<span></span>
</td>
<td class="nump">$ 60,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateDescription', window );">Loan maturity period description</a></td>
<td class="text">extend
the initial maturity date by five years to the end of 2030<span></span>
</td>
<td class="text">extend the initial maturity
date by five years to December 2030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Debt instrument interest rate effective percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.98%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDebtIssuanceCosts', window );">Cost and fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,783<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on extinguishment of debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,354<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WriteOffOfDeferredDebtIssuanceCost', window );">Write-off of the remaining unamortized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_TerminationCosts', window );">Termination costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">52<span></span>
</td>
<td class="nump">52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LegalFees', window );">Cost and fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,783<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_DeductedFromProceedsFromIssuanceOfDebt', window );">Deducted from proceeds from debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,803<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsNoncurrentNet', window );">Deferred financing costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 980<span></span>
</td>
<td class="nump">980<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfDebt', window );">Repayment of debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember', window );">Senior Secured Credit Facility [Member] | Secured Overnight Financing Rate (SOFR) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Debt instrument interest rate effective percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.50%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember', window );">Senior Secured Credit Facility [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember', window );">Senior Secured Credit Facility [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_DeductedFromProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deducted from proceeds from issuance of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_DeductedFromProceedsFromIssuanceOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FinanceLeaseLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance lease long term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FinanceLeaseLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance lease principal payments classified as financing cash flows.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance lease principal payments classified as operating cash flows.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance lease right of use asset included property plant and equipment and lease liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FinanceLeaseShortTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance lease short term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FinanceLeaseShortTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Non cash additions to right of use assets in exchange for lease liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_TerminationCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Termination costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_TerminationCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateEffectivePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDateDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the maturity date of the debt instrument including whether the debt matures serially and, if so, a brief description of the serial maturities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDateDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtWeightedAverageInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average interest rate of debt outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtWeightedAverageInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsNoncurrentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt issuance costs classified as noncurrent. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-1A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsNoncurrentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest expense on finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense attributable to right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for finance lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481303/470-50-40-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481303/470-50-40-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LegalFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of expense provided in the period for legal costs incurred on or before the balance sheet date pertaining to resolved, pending or threatened litigation, including arbitration and mediation proceedings.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(6))<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LegalFees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13)(3)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDebtIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDebtIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for short-term and long-term debt. Excludes payment of lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WriteOffOfDeferredDebtIssuanceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WriteOffOfDeferredDebtIssuanceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=us-gaap_SecuredOvernightFinancingRateSofrMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=us-gaap_SecuredOvernightFinancingRateSofrMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Fair Value of Foreign Currency Hedges (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jun. 30, 2026 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedges', window );">Total derivative assets</a></td>
<td class="nump">$ 1,019<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgesLiabilities', window );">Total derivative liabilities</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestRateSwapContractsMember', window );">Interest Rate Swap Contracts [Member] | Other Current Asset [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedges', window );">Total derivative assets</a></td>
<td class="nump">787<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestRateSwapContractsMember', window );">Interest Rate Swap Contracts [Member] | Accrued Liabilities [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgesLiabilities', window );">Total derivative liabilities</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember', window );">Foreign Currency Non Delivery Forwards [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedges', window );">Total derivative assets</a></td>
<td class="nump">232<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember', window );">Foreign Currency Non Delivery Forwards [Member] | Other Current Asset [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedges', window );">Total derivative assets</a></td>
<td class="nump">232<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember', window );">Foreign Currency Non Delivery Forwards [Member] | Accrued Liabilities [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgesLiabilities', window );">Total derivative liabilities</a></td>
<td class="text"> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the asset arising from derivative instruments and hedging activities, which are expected to be converted into cash or otherwise disposed of within a year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgesLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum as of the balance sheet date of the (a) fair values of all liabilities resulting from contracts that meet the criteria of being accounted for as derivative instruments, and (b) the carrying amounts of the liabilities arising from financial instruments or contracts used to mitigate a specified risk (hedge), and which are expected to be extinguished or otherwise disposed of within a year or the normal operating cycle, if longer, net of the effects of master netting arrangements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgesLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 182<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-182<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CC<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CC<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4E<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestRateSwapContractsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestRateSwapContractsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_StatementOfBalanceSheetLocationAxis=TGLS_OtherCurrentAssetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_StatementOfBalanceSheetLocationAxis=TGLS_OtherCurrentAssetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_StatementOfBalanceSheetLocationAxis=us-gaap_AccruedLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_StatementOfBalanceSheetLocationAxis=us-gaap_AccruedLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember', window );">Interest Rate Swap Contracts and Foreign Currency Non-delivery Forwards [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_DerivativeGainLossesOnDerivativeNet', window );">Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives</a></td>
<td class="nump">$ 1,808<span></span>
</td>
<td class="nump">$ 748<span></span>
</td>
<td class="nump">$ 2,782<span></span>
</td>
<td class="nump">$ 148<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember', window );">Interest Expense Net of Deferred Cost of Financing [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_DerivativeGainLossesOnDerivativeNet', window );">Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 1,250<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,242<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_DerivativeGainLossesOnDerivativeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Derivative gain losses on derivative net.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_DerivativeGainLossesOnDerivativeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 182<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-182<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CC<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CC<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4E<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtFairValue', window );">Fair Value</a></td>
<td class="nump">$ 215,180<span></span>
</td>
<td class="nump">$ 170,727<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Carrying Value</a></td>
<td class="nump">$ 219,238<span></span>
</td>
<td class="nump">$ 171,202<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The fair value amount of long-term debt whether such amount is presented as a separate caption or as a parenthetical disclosure. Additionally, this element may be used in connection with the fair value disclosures required in the footnote disclosures to the financial statements. The element may be used in both the balance sheet and disclosure in the same submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482881/825-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482881/825-10-55-12<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-11<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-11<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Financial Instruments and Fair Value Measurements (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 04, 2025</div></th>
<th class="th"><div>Sep. 04, 2024</div></th>
<th class="th"><div>Sep. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Sep. 03, 2025</div></th>
<th class="th"><div>Jun. 21, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateDescription', window );">Loan maturity period description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">several weeks to 5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive income net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,938<span></span>
</td>
<td class="num">$ (33,109)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedges', window );">Accumulated other comprehensive income net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,019<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember', window );">Senior Secured Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDateDescription', window );">Loan maturity period description</a></td>
<td class="text">extend
the initial maturity date by five years to the end of 2030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">extend the initial maturity
date by five years to December 2030<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt instrument basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember', window );">Senior Secured Credit Facility [Member] | Secured Overnight Financing Rate (SOFR) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt instrument basis spread on variable rate</a></td>
<td class="nump">1.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Senior Secured Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member] | Senior Secured Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestEarningAssetsAverageAmountOutstanding', window );">Interest earning assets average outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">110,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAverageAmountOutstanding', window );">Debt outstanding amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive income net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">232<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeFixedInterestRate', window );">Derivative fixed interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.93%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember', window );">Interest Rate Swap [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeFixedInterestRate', window );">Derivative fixed interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.87%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember', window );">Foreign Currency Non Delivery Forwards [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedges', window );">Accumulated other comprehensive income net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 232<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDateDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the maturity date of the debt instrument including whether the debt matures serially and, if so, a brief description of the serial maturities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDateDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482881/825-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482881/825-10-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483444/210-20-55-22<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-7A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-11<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-10<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483444/210-20-55-21<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483444/210-20-55-20<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483444/210-20-55-15<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483444/210-20-55-10<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483466/210-20-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 103<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-103<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-12<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477439/946-210-55-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-1<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 32: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478795/946-210-50-6<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(3)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5C<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(3)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5C<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5A<br> -Subparagraph (SX 210.12-13A(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5A<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeFixedInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fixed interest rate related to the interest rate derivative.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeFixedInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the asset arising from derivative instruments and hedging activities, which are expected to be converted into cash or otherwise disposed of within a year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 182<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480401/815-10-55-182<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CCC<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4CC<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CC<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4E<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestEarningAssetsAverageAmountOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Average amount outstanding of interest-earning assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1402<br> -Paragraph b<br> -Subparagraph (1)<br> -Publisher SEC<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestEarningAssetsAverageAmountOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtAverageAmountOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Average amount outstanding of long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1402<br> -Paragraph a<br> -Publisher SEC<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1402<br> -Paragraph b<br> -Subparagraph (1)<br> -Publisher SEC<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtAverageAmountOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=TGLS_SeniorSecuredCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=us-gaap_SecuredOvernightFinancingRateSofrMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=us-gaap_SecuredOvernightFinancingRateSofrMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentRiskAxis=TGLS_ForeignCurrencyNonDeliveryForwardsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Components of Income Tax Expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total current income tax</a></td>
<td class="num">$ (8,535)<span></span>
</td>
<td class="num">$ (18,616)<span></span>
</td>
<td class="num">$ (20,988)<span></span>
</td>
<td class="num">$ (33,806)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Total deferred income tax</a></td>
<td class="num">(5,560)<span></span>
</td>
<td class="nump">468<span></span>
</td>
<td class="num">(5,009)<span></span>
</td>
<td class="num">(2,002)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total income provision</a></td>
<td class="num">$ (14,095)<span></span>
</td>
<td class="num">$ (18,148)<span></span>
</td>
<td class="num">$ (25,997)<span></span>
</td>
<td class="num">$ (35,808)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="nump">36.50%<span></span>
</td>
<td class="nump">29.20%<span></span>
</td>
<td class="nump">31.50%<span></span>
</td>
<td class="nump">29.30%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total current income tax</a></td>
<td class="num">$ (7,327)<span></span>
</td>
<td class="num">$ (8,286)<span></span>
</td>
<td class="num">$ (14,417)<span></span>
</td>
<td class="num">$ (11,920)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Total deferred income tax</a></td>
<td class="num">(3,130)<span></span>
</td>
<td class="nump">58<span></span>
</td>
<td class="num">(994)<span></span>
</td>
<td class="num">(1,355)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CO', window );">COLOMBIA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total current income tax</a></td>
<td class="num">(1,208)<span></span>
</td>
<td class="num">(10,329)<span></span>
</td>
<td class="num">(6,571)<span></span>
</td>
<td class="num">(21,881)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Total deferred income tax</a></td>
<td class="num">(2,430)<span></span>
</td>
<td class="nump">410<span></span>
</td>
<td class="num">(4,015)<span></span>
</td>
<td class="num">(647)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_PA', window );">PANAMA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExaminationLineItems', window );"><strong>Income Tax Examination [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total current income tax</a></td>
<td class="text"> <span></span>
</td>
<td class="num">$ (1)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">$ (5)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExaminationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExaminationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CO">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CO</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_PA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_PA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Details Narrative)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory income tax rate</a></td>
<td class="nump">36.50%<span></span>
</td>
<td class="nump">29.20%<span></span>
</td>
<td class="nump">31.50%<span></span>
</td>
<td class="nump">29.30%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">Weighted average statutory rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29.10%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.1.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Related Parties (Details) - Related Party [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Total due from related parties</a></td>
<td class="nump">$ 2,075<span></span>
</td>
<td class="nump">$ 2,002<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Total due to related parties</a></td>
<td class="nump">8,895<span></span>
</td>
<td class="nump">10,881<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember', window );">Alutrafic Led SAS [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Total due from related parties</a></td>
<td class="nump">644<span></span>
</td>
<td class="nump">525<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember', window );">Studio Avanti SAS [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Total due from related parties</a></td>
<td class="nump">427<span></span>
</td>
<td class="nump">403<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember', window );">Prisma Glass LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Total due from related parties</a></td>
<td class="nump">359<span></span>
</td>
<td class="nump">404<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_OtherMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Total due from related parties</a></td>
<td class="nump">645<span></span>
</td>
<td class="nump">670<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Total due to related parties</a></td>
<td class="nump">3,764<span></span>
</td>
<td class="nump">5,164<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_VidrioAndinoMember', window );">Vidrio Andino [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesCurrent', window );">Total due to related parties</a></td>
<td class="nump">$ 5,131<span></span>
</td>
<td class="nump">$ 5,717<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance, of receivables classified as other, due within one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(7)(e)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 970<br> -SubTopic 810<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477383/970-810-45-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-13<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_OtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_OtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_VidrioAndinoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_VidrioAndinoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Sale to Related Parties (Details) - Related Party [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Sales to related parties</a></td>
<td class="nump">$ 720<span></span>
</td>
<td class="nump">$ 1,401<span></span>
</td>
<td class="nump">$ 1,341<span></span>
</td>
<td class="nump">$ 2,417<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember', window );">Prisma Glass LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Sales to related parties</a></td>
<td class="nump">448<span></span>
</td>
<td class="nump">785<span></span>
</td>
<td class="nump">604<span></span>
</td>
<td class="nump">1,168<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember', window );">Alutrafic Led SAS [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Sales to related parties</a></td>
<td class="nump">276<span></span>
</td>
<td class="nump">230<span></span>
</td>
<td class="nump">569<span></span>
</td>
<td class="nump">587<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember', window );">Studio Avanti SAS [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Sales to related parties</a></td>
<td class="nump">51<span></span>
</td>
<td class="nump">294<span></span>
</td>
<td class="nump">145<span></span>
</td>
<td class="nump">532<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_SalesToOtherRelatedPartiesMember', window );">Sales to Other Related Parties [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Sales to related parties</a></td>
<td class="num">$ (55)<span></span>
</td>
<td class="nump">$ 93<span></span>
</td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">$ 130<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(7)(e)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 970<br> -SubTopic 810<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477383/970-810-45-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-13<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_SalesToOtherRelatedPartiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_SalesToOtherRelatedPartiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Parties (Details Narrative) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 09, 2020</div></th>
<th class="th"><div>Oct. 28, 2020</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Oct. 27, 2020</div></th>
<th class="th"><div>May 03, 2019</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 289,353<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 289,353<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 241,178<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Purchase price of interest</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity method income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (129)<span></span>
</td>
<td class="nump">$ 2,286<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_OwnershipAxis=TGLS_VidrioAndinoMember', window );">Vidrio Andino [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByParent', window );">Minority interest ownership</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.80%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Purchase price of interest</a></td>
<td class="nump">$ 45,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Payment of cash</a></td>
<td class="nump">34,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand', window );">Land contribution value</a></td>
<td class="nump">$ 10,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesAcquisitions', window );">Shares issued during acquisition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,557,142<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssuedPricePerShare', window );">Shares issued, price per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_PremiumClosingStockPercentage', window );">Premium closing stock, percent</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_ExpectedOwnershipPercentage', window );">Expected ownership percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.80%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_FutureAdditionalContributionAmount', window );">Additional contribution amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 12,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireProductiveAssets', window );">Purchase from related party</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,352<span></span>
</td>
<td class="nump">$ 10,633<span></span>
</td>
<td class="nump">17,393<span></span>
</td>
<td class="nump">19,678<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity method income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">159<span></span>
</td>
<td class="nump">$ 941<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="nump">$ 2,258<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=TGLS_StormArmourSolutionsLLCMember', window );">Storm Armour Solutions LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Equity method investment ownership percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember', window );">Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue from related parties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">720<span></span>
</td>
<td class="nump">$ 1,401<span></span>
</td>
<td class="nump">1,341<span></span>
</td>
<td class="nump">$ 2,417<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember', window );">Related Party [Member] | Vidrio Andino [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Payable outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,131<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,131<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,717<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember', window );">Alutrafic Led SAS [Member] | Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue from related parties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">276<span></span>
</td>
<td class="nump">230<span></span>
</td>
<td class="nump">569<span></span>
</td>
<td class="nump">587<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">644<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">644<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">525<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_FundacionTecnoglassMember', window );">Fundacion Tecnoglass [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_CashContributionsForSocialCauses', window );">Cash contributions for social causes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,242<span></span>
</td>
<td class="nump">998<span></span>
</td>
<td class="nump">2,426<span></span>
</td>
<td class="nump">2,046<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember', window );">Prisma Glass LLC [Member] | Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue from related parties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">448<span></span>
</td>
<td class="nump">785<span></span>
</td>
<td class="nump">604<span></span>
</td>
<td class="nump">1,168<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">359<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">359<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">404<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_SantaMariaDelMarSASMember', window );">Santa Maria Del Mar SAS [Member] | Related Party [Member] | CEO and COO [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_TGLS_PurchasePriceOfFuel', window );">Purchases of fuel</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">462<span></span>
</td>
<td class="nump">131<span></span>
</td>
<td class="nump">846<span></span>
</td>
<td class="nump">719<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StormArmourSolutionsLLCMember', window );">Storm Armour Solutions LLC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Investments', window );">Investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">901<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">901<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember', window );">Studio Avanti SAS [Member] | Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue from related parties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">51<span></span>
</td>
<td class="nump">$ 294<span></span>
</td>
<td class="nump">145<span></span>
</td>
<td class="nump">$ 532<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">427<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">427<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">403<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAxis=TGLS_ZofracostaSAMember', window );">Zofracosta SA [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Investments', window );">Investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 883<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 883<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 810<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_CashContributionsForSocialCauses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash contributions for social causes</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_CashContributionsForSocialCauses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_ExpectedOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expected ownership percentage.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_ExpectedOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_FutureAdditionalContributionAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Future additional contribution amount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_FutureAdditionalContributionAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_PremiumClosingStockPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Premium closing stock, percent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_PremiumClosingStockPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_TGLS_PurchasePriceOfFuel">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Purchase price of fuel.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">TGLS_PurchasePriceOfFuel</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>TGLS_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477802/946-310-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(5)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479196/954-310-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of land acquired in business combination and recognized at acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) for proportionate share of equity method investee's income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481664/323-10-45-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Investments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all investments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 80<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480078/944-80-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 80<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480078/944-80-55-9<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(1)(h))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(1)(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Investments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterestOwnershipPercentageByParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The parent entity's interest in net assets of the subsidiary, expressed as a percentage.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestOwnershipPercentageByParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireProductiveAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480060/805-50-25-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480027/805-50-30-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480027/805-50-30-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireProductiveAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(7)(e)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 970<br> -SubTopic 810<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477383/970-810-45-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-13<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesIssuedPricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or per unit amount of equity securities issued.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesIssuedPricePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of stock issued during the period pursuant to acquisitions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesAcquisitions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_OwnershipAxis=TGLS_VidrioAndinoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=TGLS_VidrioAndinoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=TGLS_StormArmourSolutionsLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=TGLS_StormArmourSolutionsLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_AlutraficLedSASMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_FundacionTecnoglassMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_FundacionTecnoglassMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_PrismaGlassLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_SantaMariaDelMarSASMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_SantaMariaDelMarSASMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=TGLS_CEOAndCOOMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=TGLS_CEOAndCOOMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StormArmourSolutionsLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_StormArmourSolutionsLLCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_StudioAvantiSASMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionAxis=TGLS_ZofracostaSAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAxis=TGLS_ZofracostaSAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Earnings Per Share, Basic and Diluted (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net Income attributable to parent</a></td>
<td class="nump">$ 24,555<span></span>
</td>
<td class="nump">$ 44,083<span></span>
</td>
<td class="nump">$ 56,446<span></span>
</td>
<td class="nump">$ 86,272<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Denominator for basic earnings per ordinary share - weighted average shares outstanding</a></td>
<td class="nump">44,364,801<span></span>
</td>
<td class="nump">46,988,155<span></span>
</td>
<td class="nump">44,497,265<span></span>
</td>
<td class="nump">46,989,650<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Denominator for diluted earnings per ordinary share - weighted average shares outstanding</a></td>
<td class="nump">44,364,801<span></span>
</td>
<td class="nump">46,988,155<span></span>
</td>
<td class="nump">44,497,265<span></span>
</td>
<td class="nump">46,989,650<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per ordinary share</a></td>
<td class="nump">$ 0.55<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 1.27<span></span>
</td>
<td class="nump">$ 1.84<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per ordinary share</a></td>
<td class="nump">$ 0.55<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 1.27<span></span>
</td>
<td class="nump">$ 1.84<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482705/350-40-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479719/606-10-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 32: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 53: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Shareholders&#8217; Equity (Details Narrative) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2026</div></th>
<th class="th"><div>Jun. 30, 2026</div></th>
<th class="th"><div>Mar. 18, 2026</div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Share price</a></td>
<td class="nump">$ 0.15<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Value of shares repurchased</a></td>
<td class="num">$ (16,461)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury shares, aggregate repurchase cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 95,679<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 79,218<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_TreasuryStockCommonMember', window );">Treasury Stock, Common [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Number of shares repurchased</a></td>
<td class="nump">372,910<span></span>
</td>
<td class="nump">372,910<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Value of shares repurchased</a></td>
<td class="num">$ (16,461)<span></span>
</td>
<td class="nump">$ 16,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=TGLS_QuarterlyRateMember', window );">Quarterly Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Share price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=TGLS_AnnualBasisMember', window );">Annual Basis [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems', window );"><strong>Accumulated Other Comprehensive Income (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Share price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.60<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477657/942-210-S45-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478478/942-210-S50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481108/505-30-30-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480070/505-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480100/505-10-S45-2<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480657/210-10-S50-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_TreasuryStockCommonMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_TreasuryStockCommonMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=TGLS_QuarterlyRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=TGLS_QuarterlyRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=TGLS_AnnualBasisMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=TGLS_AnnualBasisMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies (Details Narrative) - Minimum [Member]<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2026 </div>
<div>USD ($)</div>
</th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">February 28, 2023 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentAmount', window );">Purchase of aggregate raw material</a></td>
<td class="nump">$ 151,878<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Through 2028 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentAmount', window );">Purchase of aggregate raw material</a></td>
<td class="nump">$ 8,364<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermPurchaseCommitmentAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The minimum amount the entity agreed to spend under the long-term purchase commitment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermPurchaseCommitmentAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-9<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482645/405-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.W.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479583/944-40-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 720<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483359/720-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 27<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482395/460-10-55-27<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-9<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483076/450-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=TGLS_FebruaryTwentyEightThousandThirtyThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=TGLS_FebruaryTwentyEightThousandThirtyThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=TGLS_ThroughTwoThousandTwentyEightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=TGLS_ThroughTwoThousandTwentyEightMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
.report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

.report table.authRefData a {
	display: block;
	font-weight: bold;
}

.report table.authRefData p {
	margin-top: 0px;
}

.report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

.report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

.report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

.report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
.pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
.report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

.report hr {
	border: 1px solid #acf;
}

/* Top labels */
.report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

.report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

.report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

.report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

.report td.pl div.a {
	width: 200px;
}

.report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
.report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
.report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
.report .re, .report .reu {
	background-color: #def;
}

.report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
.report .ro, .report .rou {
	background-color: white;
}

.report .rou td {
	border-bottom: 1px solid black;
}

.report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
.report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
.report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

.report .nump {
	padding-left: 2em;
}

.report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
.report .text {
	text-align: left;
	white-space: normal;
}

.report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

.report .text .more {
	display: none;
}

.report .text .note {
	font-style: italic;
	font-weight: bold;
}

.report .text .small {
	width: 10em;
}

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.26.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>218</ContextCount>
  <ElementCount>333</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>57</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>5</UnitCount>
  <MyReports>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>00000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/BalanceSheets</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>00000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/BalanceSheetsParenthetical</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>00000004 - Statement - Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome</Role>
      <ShortName>Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>00000005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/StatementsOfCashFlows</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>00000006 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/StatementsOfShareholdersEquity</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>00000007 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>995410 - Disclosure - Pay vs Performance Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/PvpDisclosure</Role>
      <ShortName>Pay vs Performance Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>995445 - Disclosure - Insider Trading Arrangements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements</Role>
      <ShortName>Insider Trading Arrangements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>999013 - Disclosure - General</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/General</Role>
      <ShortName>General</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>999014 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>999015 - Disclosure - Acquisitions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/Acquisitions</Role>
      <ShortName>Acquisitions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>999016 - Disclosure - Inventories, net</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/InventoriesNet</Role>
      <ShortName>Inventories, net</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>999017 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities</Role>
      <ShortName>Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>999018 - Disclosure - Intangible Assets and Goodwill</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/IntangibleAssetsAndGoodwill</Role>
      <ShortName>Intangible Assets and Goodwill</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>999019 - Disclosure - Supplier Finance Program</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/SupplierFinanceProgram</Role>
      <ShortName>Supplier Finance Program</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>999020 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/Debt</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>999021 - Disclosure - Derivative Financial Instruments and Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements</Role>
      <ShortName>Derivative Financial Instruments and Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>999022 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>999023 - Disclosure - Related Parties</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/RelatedParties</Role>
      <ShortName>Related Parties</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>999024 - Disclosure - Shareholders’ Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ShareholdersEquity</Role>
      <ShortName>Shareholders’ Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>999025 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>999026 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>999027 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>999028 - Disclosure - Acquisitions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/AcquisitionsTables</Role>
      <ShortName>Acquisitions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/Acquisitions</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>999029 - Disclosure - Inventories, net (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/InventoriesNetTables</Role>
      <ShortName>Inventories, net (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/InventoriesNet</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>999030 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables</Role>
      <ShortName>Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>999031 - Disclosure - Intangible Assets and Goodwill (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables</Role>
      <ShortName>Intangible Assets and Goodwill (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/IntangibleAssetsAndGoodwill</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>999032 - Disclosure - Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/DebtTables</Role>
      <ShortName>Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/Debt</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>999033 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables</Role>
      <ShortName>Derivative Financial Instruments and Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>999034 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/IncomeTaxes</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>999035 - Disclosure - Related Parties (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/RelatedPartiesTables</Role>
      <ShortName>Related Parties (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/RelatedParties</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>999036 - Disclosure - Shareholders’ Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ShareholdersEquityTables</Role>
      <ShortName>Shareholders’ Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/ShareholdersEquity</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>999037 - Disclosure - Schedule of Product Warranty Liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails</Role>
      <ShortName>Schedule of Product Warranty Liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>999038 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>999039 - Disclosure - Schedule of Purchase Price Allocation Consideration Transferred (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails</Role>
      <ShortName>Schedule of Purchase Price Allocation Consideration Transferred (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>999040 - Disclosure - Acquisitions (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/AcquisitionsDetailsNarrative</Role>
      <ShortName>Acquisitions (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/AcquisitionsTables</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>999041 - Disclosure - Schedule of Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfInventoriesDetails</Role>
      <ShortName>Schedule of Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>999042 - Disclosure - Schedule of Disaggregation by Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails</Role>
      <ShortName>Schedule of Disaggregation by Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>999043 - Disclosure - Schedule of Geographic Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails</Role>
      <ShortName>Schedule of Geographic Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>999044 - Disclosure - Schedule of Revenues Distribution By End Market (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails</Role>
      <ShortName>Schedule of Revenues Distribution By End Market (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>999045 - Disclosure - Schedule of Trade Accounts Receivable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails</Role>
      <ShortName>Schedule of Trade Accounts Receivable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>999046 - Disclosure - Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails</Role>
      <ShortName>Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>999047 - Disclosure - Schedule of Contract Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails</Role>
      <ShortName>Schedule of Contract Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>999048 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative</Role>
      <ShortName>Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>999049 - Disclosure - Schedule of Finite-Lived Intangible Assets, Net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails</Role>
      <ShortName>Schedule of Finite-Lived Intangible Assets, Net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>999050 - Disclosure - Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails</Role>
      <ShortName>Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>999051 - Disclosure - Intangible Assets and Goodwill (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative</Role>
      <ShortName>Intangible Assets and Goodwill (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>999052 - Disclosure - Supplier Finance Program (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative</Role>
      <ShortName>Supplier Finance Program (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/SupplierFinanceProgram</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>999053 - Disclosure - Schedule of Long Term Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails</Role>
      <ShortName>Schedule of Long Term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>999054 - Disclosure - Schedule of Interest Income Expenses net and deferred cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails</Role>
      <ShortName>Schedule of Interest Income Expenses net and deferred cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>999055 - Disclosure - Schedule of Maturities of Long Term Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails</Role>
      <ShortName>Schedule of Maturities of Long Term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>999056 - Disclosure - Schedule of Future Minimum Lease Payments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails</Role>
      <ShortName>Schedule of Future Minimum Lease Payments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>999057 - Disclosure - Debt (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/DebtDetailsNarrative</Role>
      <ShortName>Debt (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/DebtTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>999058 - Disclosure - Schedule of Fair Value of Foreign Currency Hedges (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails</Role>
      <ShortName>Schedule of Fair Value of Foreign Currency Hedges (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>999059 - Disclosure - Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails</Role>
      <ShortName>Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>999060 - Disclosure - Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails</Role>
      <ShortName>Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>999061 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative</Role>
      <ShortName>Derivative Financial Instruments and Fair Value Measurements (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables</ParentRole>
      <Position>58</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>999062 - Disclosure - Schedule of Components of Income Tax Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails</Role>
      <ShortName>Schedule of Components of Income Tax Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>999063 - Disclosure - Income Taxes (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/IncomeTaxesDetailsNarrative</Role>
      <ShortName>Income Taxes (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/IncomeTaxesTables</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>999064 - Disclosure - Schedule of Related Parties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails</Role>
      <ShortName>Schedule of Related Parties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>999065 - Disclosure - Schedule of Sale to Related Parties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails</Role>
      <ShortName>Schedule of Sale to Related Parties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>999066 - Disclosure - Related Parties (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/RelatedPartiesDetailsNarrative</Role>
      <ShortName>Related Parties (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/RelatedPartiesTables</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>999067 - Disclosure - Schedule of Earnings Per Share, Basic and Diluted (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails</Role>
      <ShortName>Schedule of Earnings Per Share, Basic and Diluted (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>999068 - Disclosure - Shareholders’ Equity (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative</Role>
      <ShortName>Shareholders’ Equity (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/ShareholdersEquityTables</ParentRole>
      <Position>65</Position>
    </Report>
    <Report instance="form10-q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>999069 - Disclosure - Commitments and Contingencies (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative</Role>
      <ShortName>Commitments and Contingencies (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tecnoglass.com/role/CommitmentsAndContingencies</ParentRole>
      <Position>66</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="form10-q.htm">form10-q.htm</File>
    <File>tgls-20260630.xsd</File>
    <File>tgls-20260630_cal.xml</File>
    <File>tgls-20260630_def.xml</File>
    <File>tgls-20260630_lab.xml</File>
    <File>tgls-20260630_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="883">http://fasb.org/us-gaap/2026</BaseTaxonomy>
    <BaseTaxonomy items="32">http://xbrl.sec.gov/dei/2026</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/ecd/2026</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>82
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "form10-q.htm": {
   "nsprefix": "TGLS",
   "nsuri": "http://tecnoglass.com/20260630",
   "dts": {
    "inline": {
     "local": [
      "form10-q.htm"
     ]
    },
    "schema": {
     "local": [
      "tgls-20260630.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd",
      "https://xbrl.fasb.org/srt/2026/elts/srt-roles-2026.xsd",
      "https://xbrl.fasb.org/srt/2026/elts/srt-types-2026.xsd",
      "https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd",
      "https://xbrl.fasb.org/us-gaap/2026/elts/us-roles-2026.xsd",
      "https://xbrl.fasb.org/us-gaap/2026/elts/us-types-2026.xsd",
      "https://xbrl.sec.gov/country/2026/country-2026.xsd",
      "https://xbrl.sec.gov/dei/2026/dei-2026.xsd",
      "https://xbrl.sec.gov/ecd/2026/ecd-2026.xsd",
      "https://xbrl.sec.gov/stpr/2026/stpr-2026.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "tgls-20260630_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tgls-20260630_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "tgls-20260630_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tgls-20260630_pre.xml"
     ]
    }
   },
   "keyStandard": 286,
   "keyCustom": 47,
   "axisStandard": 20,
   "axisCustom": 1,
   "memberStandard": 20,
   "memberCustom": 34,
   "hidden": {
    "total": 125,
    "http://fasb.org/us-gaap/2026": 99,
    "http://tecnoglass.com/20260630": 22,
    "http://xbrl.sec.gov/dei/2026": 4
   },
   "contextCount": 218,
   "entityCount": 1,
   "segmentCount": 57,
   "elementCount": 601,
   "unitCount": 5,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2026": 883,
    "http://xbrl.sec.gov/dei/2026": 32,
    "http://xbrl.sec.gov/ecd/2026": 4
   },
   "report": {
    "R1": {
     "role": "http://tecnoglass.com/role/Cover",
     "longName": "00000001 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://tecnoglass.com/role/BalanceSheets",
     "longName": "00000002 - Statement - Condensed Consolidated Balance Sheets (Unaudited)",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://tecnoglass.com/role/BalanceSheetsParenthetical",
     "longName": "00000003 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "USDPShares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "USDPShares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome",
     "longName": "00000004 - Statement - Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Operations and Other Comprehensive Income (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://tecnoglass.com/role/StatementsOfCashFlows",
     "longName": "00000005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DepreciationAndAmortization",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R6": {
     "role": "http://tecnoglass.com/role/StatementsOfShareholdersEquity",
     "longName": "00000006 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "AsOf2024-12-31_us-gaap_CommonStockMember",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-012025-03-31_us-gaap_RetainedEarningsMember",
      "name": "us-gaap:DividendsCommonStock",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R7": {
     "role": "http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical",
     "longName": "00000007 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) (Parenthetical)",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited) (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:SharePrice",
      "unitRef": "USDPShares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R8": {
     "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": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R9": {
     "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
     "longName": "995445 - Disclosure - Insider Trading Arrangements",
     "shortName": "Insider Trading Arrangements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "span",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://tecnoglass.com/role/General",
     "longName": "999013 - Disclosure - General",
     "shortName": "General",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies",
     "longName": "999014 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://tecnoglass.com/role/Acquisitions",
     "longName": "999015 - Disclosure - Acquisitions",
     "shortName": "Acquisitions",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://tecnoglass.com/role/InventoriesNet",
     "longName": "999016 - Disclosure - Inventories, net",
     "shortName": "Inventories, net",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities",
     "longName": "999017 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities",
     "shortName": "Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://tecnoglass.com/role/IntangibleAssetsAndGoodwill",
     "longName": "999018 - Disclosure - Intangible Assets and Goodwill",
     "shortName": "Intangible Assets and Goodwill",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://tecnoglass.com/role/SupplierFinanceProgram",
     "longName": "999019 - Disclosure - Supplier Finance Program",
     "shortName": "Supplier Finance Program",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:SupplierFinanceProgramTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:SupplierFinanceProgramTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://tecnoglass.com/role/Debt",
     "longName": "999020 - Disclosure - Debt",
     "shortName": "Debt",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements",
     "longName": "999021 - Disclosure - Derivative Financial Instruments and Fair Value Measurements",
     "shortName": "Derivative Financial Instruments and Fair Value Measurements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://tecnoglass.com/role/IncomeTaxes",
     "longName": "999022 - Disclosure - Income Taxes",
     "shortName": "Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://tecnoglass.com/role/RelatedParties",
     "longName": "999023 - Disclosure - Related Parties",
     "shortName": "Related Parties",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://tecnoglass.com/role/ShareholdersEquity",
     "longName": "999024 - Disclosure - Shareholders\u2019 Equity",
     "shortName": "Shareholders\u2019 Equity",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://tecnoglass.com/role/CommitmentsAndContingencies",
     "longName": "999025 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies",
     "longName": "999026 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "23",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables",
     "longName": "999027 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "24",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:ExtendedProductWarrantyPolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:ExtendedProductWarrantyPolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://tecnoglass.com/role/AcquisitionsTables",
     "longName": "999028 - Disclosure - Acquisitions (Tables)",
     "shortName": "Acquisitions (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "25",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://tecnoglass.com/role/InventoriesNetTables",
     "longName": "999029 - Disclosure - Inventories, net (Tables)",
     "shortName": "Inventories, net (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables",
     "longName": "999030 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)",
     "shortName": "Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables",
     "longName": "999031 - Disclosure - Intangible Assets and Goodwill (Tables)",
     "shortName": "Intangible Assets and Goodwill (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://tecnoglass.com/role/DebtTables",
     "longName": "999032 - Disclosure - Debt (Tables)",
     "shortName": "Debt (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables",
     "longName": "999033 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Tables)",
     "shortName": "Derivative Financial Instruments and Fair Value Measurements (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "TGLS:ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "TGLS:ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://tecnoglass.com/role/IncomeTaxesTables",
     "longName": "999034 - Disclosure - Income Taxes (Tables)",
     "shortName": "Income Taxes (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://tecnoglass.com/role/RelatedPartiesTables",
     "longName": "999035 - Disclosure - Related Parties (Tables)",
     "shortName": "Related Parties (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://tecnoglass.com/role/ShareholdersEquityTables",
     "longName": "999036 - Disclosure - Shareholders\u2019 Equity (Tables)",
     "shortName": "Shareholders\u2019 Equity (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails",
     "longName": "999037 - Disclosure - Schedule of Product Warranty Liability (Details)",
     "shortName": "Schedule of Product Warranty Liability (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "34",
     "firstAnchor": {
      "contextRef": "AsOf2025-12-31",
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ExtendedProductWarrantyPolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-12-31",
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ExtendedProductWarrantyPolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative",
     "longName": "999038 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:StandardProductWarrantyDescription",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:ExtendedProductWarrantyPolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:StandardProductWarrantyDescription",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:ExtendedProductWarrantyPolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails",
     "longName": "999039 - Disclosure - Schedule of Purchase Price Allocation Consideration Transferred (Details)",
     "shortName": "Schedule of Purchase Price Allocation Consideration Transferred (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R37": {
     "role": "http://tecnoglass.com/role/AcquisitionsDetailsNarrative",
     "longName": "999040 - Disclosure - Acquisitions (Details Narrative)",
     "shortName": "Acquisitions (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "AsOf2025-06-30",
      "name": "us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-06-30",
      "name": "us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "role": "http://tecnoglass.com/role/ScheduleOfInventoriesDetails",
     "longName": "999041 - Disclosure - Schedule of Inventories (Details)",
     "shortName": "Schedule of Inventories (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:InventoryRawMaterials",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:InventoryRawMaterials",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails",
     "longName": "999042 - Disclosure - Schedule of Disaggregation by Revenue (Details)",
     "shortName": "Schedule of Disaggregation by Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:NumberOfReportableSegments",
      "unitRef": "Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:NumberOfReportableSegments",
      "unitRef": "Segment",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails",
     "longName": "999043 - Disclosure - Schedule of Geographic Information (Details)",
     "shortName": "Schedule of Geographic Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30_country_CO",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R41": {
     "role": "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails",
     "longName": "999044 - Disclosure - Schedule of Revenues Distribution By End Market (Details)",
     "shortName": "Schedule of Revenues Distribution By End Market (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30_custom_ResidentialMember",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfRevenuesDistributionByEndMarketTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R42": {
     "role": "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails",
     "longName": "999045 - Disclosure - Schedule of Trade Accounts Receivable (Details)",
     "shortName": "Schedule of Trade Accounts Receivable (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R43": {
     "role": "http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails",
     "longName": "999046 - Disclosure - Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)",
     "shortName": "Schedule of Changes in Allowance for Doubtful Accounts Receivable (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "AsOf2025-12-31",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R44": {
     "role": "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails",
     "longName": "999047 - Disclosure - Schedule of Contract Assets and Liabilities (Details)",
     "shortName": "Schedule of Contract Assets and Liabilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:ContractWithCustomerAssetNetCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "TGLS:NetContractLiabilitiesAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R45": {
     "role": "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative",
     "longName": "999048 - Disclosure - Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)",
     "shortName": "Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "role": "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails",
     "longName": "999049 - Disclosure - Schedule of Finite-Lived Intangible Assets, Net (Details)",
     "shortName": "Schedule of Finite-Lived Intangible Assets, Net (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails",
     "longName": "999050 - Disclosure - Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)",
     "shortName": "Schedule of Finite Lived Intangible Assets Future Amortization Expense (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R48": {
     "role": "http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative",
     "longName": "999051 - Disclosure - Intangible Assets and Goodwill (Details Narrative)",
     "shortName": "Intangible Assets and Goodwill (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R49": {
     "role": "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative",
     "longName": "999052 - Disclosure - Supplier Finance Program (Details Narrative)",
     "shortName": "Supplier Finance Program (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30_custom_SupplierFinanceProgramMember",
      "name": "us-gaap:ProgramRightsObligationsCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:SupplierFinanceProgramTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R50": {
     "role": "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails",
     "longName": "999053 - Disclosure - Schedule of Long Term Debt (Details)",
     "shortName": "Schedule of Long Term Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:LineOfCredit",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:LineOfCredit",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R51": {
     "role": "http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails",
     "longName": "999054 - Disclosure - Schedule of Interest Income Expenses net and deferred cost (Details)",
     "shortName": "Schedule of Interest Income Expenses net and deferred cost (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:InterestExpense",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:InterestExpense",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R52": {
     "role": "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails",
     "longName": "999055 - Disclosure - Schedule of Maturities of Long Term Debt (Details)",
     "shortName": "Schedule of Maturities of Long Term Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R53": {
     "role": "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails",
     "longName": "999056 - Disclosure - Schedule of Future Minimum Lease Payments (Details)",
     "shortName": "Schedule of Future Minimum Lease Payments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://tecnoglass.com/role/DebtDetailsNarrative",
     "longName": "999057 - Disclosure - Debt (Details Narrative)",
     "shortName": "Debt (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DebtInstrumentMaturityDateDescription",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R55": {
     "role": "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails",
     "longName": "999058 - Disclosure - Schedule of Fair Value of Foreign Currency Hedges (Details)",
     "shortName": "Schedule of Fair Value of Foreign Currency Hedges (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:DerivativeInstrumentsAndHedges",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30_custom_InterestRateSwapContractsMember_custom_OtherCurrentAssetMember",
      "name": "us-gaap:DerivativeInstrumentsAndHedges",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R56": {
     "role": "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails",
     "longName": "999059 - Disclosure - Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)",
     "shortName": "Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember",
      "name": "TGLS:DerivativeGainLossesOnDerivativeNet",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember",
      "name": "TGLS:DerivativeGainLossesOnDerivativeNet",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "role": "http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails",
     "longName": "999060 - Disclosure - Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)",
     "shortName": "Schedule of Fair Value and Carrying Amounts of Long Term Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:LongTermDebtFairValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:LongTermDebtFairValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R58": {
     "role": "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative",
     "longName": "999061 - Disclosure - Derivative Financial Instruments and Fair Value Measurements (Details Narrative)",
     "shortName": "Derivative Financial Instruments and Fair Value Measurements (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "58",
     "firstAnchor": {
      "contextRef": "From2026-01-01to2026-06-30",
      "name": "us-gaap:DebtInstrumentMaturityDateDescription",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2024-09-042024-09-04_custom_SeniorSecuredCreditFacilityMember",
      "name": "us-gaap:DebtInstrumentBasisSpreadOnVariableRate1",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R59": {
     "role": "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails",
     "longName": "999062 - Disclosure - Schedule of Components of Income Tax Expense (Details)",
     "shortName": "Schedule of Components of Income Tax Expense (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "59",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "role": "http://tecnoglass.com/role/IncomeTaxesDetailsNarrative",
     "longName": "999063 - Disclosure - Income Taxes (Details Narrative)",
     "shortName": "Income Taxes (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "60",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    },
    "R61": {
     "role": "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
     "longName": "999064 - Disclosure - Schedule of Related Parties (Details)",
     "shortName": "Schedule of Related Parties (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "61",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30_us-gaap_RelatedPartyMember",
      "name": "us-gaap:OtherReceivablesNetCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember",
      "name": "us-gaap:OtherReceivablesNetCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R62": {
     "role": "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails",
     "longName": "999065 - Disclosure - Schedule of Sale to Related Parties (Details)",
     "shortName": "Schedule of Sale to Related Parties (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "62",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30_us-gaap_RelatedPartyMember",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfSaleToRelatedPartyTableTextBlock",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-04-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "TGLS:ScheduleOfSaleToRelatedPartyTableTextBlock",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R63": {
     "role": "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
     "longName": "999066 - Disclosure - Related Parties (Details Narrative)",
     "shortName": "Related Parties (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "63",
     "firstAnchor": {
      "contextRef": "AsOf2026-06-30",
      "name": "us-gaap:AccountsReceivableNet",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2019-05-03_custom_VidrioAndinoMember",
      "name": "us-gaap:MinorityInterestOwnershipPercentageByParent",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R64": {
     "role": "http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails",
     "longName": "999067 - Disclosure - Schedule of Earnings Per Share, Basic and Diluted (Details)",
     "shortName": "Schedule of Earnings Per Share, Basic and Diluted (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "64",
     "firstAnchor": {
      "contextRef": "From2026-04-012026-06-30",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R65": {
     "role": "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
     "longName": "999068 - Disclosure - Shareholders\u2019 Equity (Details Narrative)",
     "shortName": "Shareholders\u2019 Equity (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "65",
     "firstAnchor": {
      "contextRef": "AsOf2026-03-31",
      "name": "us-gaap:SharePrice",
      "unitRef": "USDPShares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2026-03-18_custom_QuarterlyRateMember",
      "name": "us-gaap:SharePrice",
      "unitRef": "USDPShares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "unique": true
     }
    },
    "R66": {
     "role": "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative",
     "longName": "999069 - Disclosure - Commitments and Contingencies (Details Narrative)",
     "shortName": "Commitments and Contingencies (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "66",
     "firstAnchor": {
      "contextRef": "From2026-01-012026-06-30_srt_MinimumMember_custom_FebruaryTwentyEightThousandThirtyThreeMember",
      "name": "us-gaap:LongTermPurchaseCommitmentAmount",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2026-01-012026-06-30_srt_MinimumMember_custom_FebruaryTwentyEightThousandThirtyThreeMember",
      "name": "us-gaap:LongTermPurchaseCommitmentAmount",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "form10-q.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "TGLS_AccountPayableForBusinessAcquisition": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "AccountPayableForBusinessAcquisition",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Account payable for business acquisition",
        "documentation": "Account payable for business acquisition."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccountsPayableAndAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade accounts payable and accrued expenses",
        "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."
       }
      }
     },
     "auth_ref": [
      "r1342"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payable outstanding",
        "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": [
      "r1180",
      "r1324",
      "r1327"
     ]
    },
    "us-gaap_AccountsReceivableGrossCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccountsReceivableGrossCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Short-term trade accounts receivable",
        "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": [
      "r82",
      "r113",
      "r231",
      "r1065"
     ]
    },
    "us-gaap_AccountsReceivableNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccountsReceivableNet",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total trade accounts receivable",
        "label": "Accounts receivable",
        "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": [
      "r975",
      "r1044",
      "r1205",
      "r1593",
      "r1594"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNet",
       "weight": 1.0,
       "order": 1.0
      },
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade accounts receivable, net",
        "verboseLabel": "Total short-term trade accounts receivable",
        "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": [
      "r1440"
     ]
    },
    "us-gaap_AccountsReceivableNetNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccountsReceivableNetNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 2.0
      },
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long term accounts receivable",
        "verboseLabel": "Long term trade accounts",
        "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 noncurrent."
       }
      }
     },
     "auth_ref": [
      "r1440"
     ]
    },
    "us-gaap_AccruedLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccruedLiabilitiesMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Liabilities [Member]",
        "documentation": "This item represents obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [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": [
      "r135",
      "r136",
      "r690",
      "r691",
      "r692",
      "r693",
      "r723",
      "r724",
      "r725",
      "r726",
      "r727",
      "r728"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated other comprehensive (loss)",
        "verboseLabel": "Accumulated other comprehensive income net of tax",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r10",
      "r25",
      "r117",
      "r422",
      "r831",
      "r832",
      "r844",
      "r886",
      "r925",
      "r929",
      "r1547"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccumulatedOtherComprehensiveIncomeLossTable",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [Table]",
        "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r135",
      "r136",
      "r690",
      "r691",
      "r692",
      "r693",
      "r723",
      "r724",
      "r725",
      "r726",
      "r727",
      "r728"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "AOCI Attributable to Parent [Member]",
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r8",
      "r10",
      "r680",
      "r685",
      "r688",
      "r744",
      "r920",
      "r921",
      "r1352",
      "r1353",
      "r1354",
      "r1414",
      "r1415",
      "r1416",
      "r1419",
      "r1494",
      "r1495"
     ]
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "presentation": [
      "http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted average amortization period",
        "documentation": "Weighted-average period of amortization for finite-lived intangible asset acquired in business combination, asset acquisition, and from joint venture formation, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r308",
      "r1058"
     ]
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "Additional402vDisclosureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional 402(v) Disclosure"
       }
      }
     },
     "auth_ref": [
      "r1262"
     ]
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r115",
      "r422",
      "r831",
      "r832",
      "r844",
      "r1180",
      "r1637"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "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": [
      "r876",
      "r945",
      "r1414",
      "r1415",
      "r1416",
      "r1419",
      "r1548",
      "r1643"
     ]
    },
    "ecd_AdjToCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AdjToCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation, Amount"
       }
      }
     },
     "auth_ref": [
      "r1269"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AdjToCompAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation [Axis]"
       }
      }
     },
     "auth_ref": [
      "r1269"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AdjToNonPeoNeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Non-PEO NEO Compensation Footnote"
       }
      }
     },
     "auth_ref": [
      "r1269"
     ]
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AdjToPeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment To PEO Compensation, Footnote"
       }
      }
     },
     "auth_ref": [
      "r1269"
     ]
    },
    "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r1233",
      "r1244",
      "r1254",
      "r1280"
     ]
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AggtErrCompNotYetDeterminedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Not Yet Determined"
       }
      }
     },
     "auth_ref": [
      "r1236",
      "r1247",
      "r1257",
      "r1283"
     ]
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AllAdjToCompMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "auth_ref": [
      "r1269"
     ]
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AllExecutiveCategoriesMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "auth_ref": [
      "r1276"
     ]
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AllIndividualsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "auth_ref": [
      "r1237",
      "r1248",
      "r1258",
      "r1276",
      "r1284",
      "r1288",
      "r1296"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails",
      "http://tecnoglass.com/role/ScheduleOfTradeAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: Allowance for credit losses",
        "periodStartLabel": "Balance at beginning of period",
        "periodEndLabel": "Balance at end of period",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r121",
      "r232",
      "r272"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Deductions and write-offs, net of foreign currency adjustment",
        "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff",
        "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance."
       }
      }
     },
     "auth_ref": [
      "r276"
     ]
    },
    "TGLS_AlutraficLedSASMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "AlutraficLedSASMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Alutrafic Led SAS [Member]",
        "documentation": "Alutrafic Led SAS [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "AmendmentDescription",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Description",
        "documentation": "Description of changes contained within amended document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "AmortizationOfIntangibleAssets",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization expense",
        "documentation": "Amount of amortization expense for finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r147",
      "r305",
      "r312",
      "r1061",
      "r1076",
      "r1077",
      "r1080",
      "r1083",
      "r1464"
     ]
    },
    "TGLS_AnnualBasisMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "AnnualBasisMember",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Annual Basis [Member]",
        "documentation": "Annual Basis [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AnnualInformationForm": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "AnnualInformationForm",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Annual Information Form",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form."
       }
      }
     },
     "auth_ref": [
      "r1240"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets",
        "label": "Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r76",
      "r94",
      "r160",
      "r163",
      "r164",
      "r197",
      "r202",
      "r220",
      "r223",
      "r267",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r612",
      "r616",
      "r717",
      "r831",
      "r832",
      "r835",
      "r851",
      "r852",
      "r881",
      "r980",
      "r1093",
      "r1094",
      "r1106",
      "r1180",
      "r1197",
      "r1198",
      "r1214",
      "r1486",
      "r1487",
      "r1583"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ASSETS"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "Assets, Current",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r76",
      "r125",
      "r160",
      "r163",
      "r164",
      "r267",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r612",
      "r616",
      "r717",
      "r1180",
      "r1321",
      "r1486",
      "r1487",
      "r1583"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total long-term assets",
        "label": "Assets, Noncurrent",
        "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 after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r76",
      "r160",
      "r163",
      "r164",
      "r267",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r612",
      "r616",
      "r717",
      "r1486",
      "r1487",
      "r1583"
     ]
    },
    "us-gaap_AssetsNoncurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AssetsNoncurrentAbstract",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term assets:"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AuditedAnnualFinancialStatements": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "AuditedAnnualFinancialStatements",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Audited Annual Financial Statements",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements."
       }
      }
     },
     "auth_ref": [
      "r1240"
     ]
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r1291"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardGrantDateFairValue",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value as of Grant Date"
       }
      }
     },
     "auth_ref": [
      "r1292"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardTmgDiscLineItems",
     "auth_ref": [
      "r1287"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardTmgHowMnpiCnsdrdTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing, How MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r1287"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardTmgMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Method"
       }
      }
     },
     "auth_ref": [
      "r1287"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardTmgMnpiCnsdrdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r1287"
     ]
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardTmgMnpiDiscTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Disclosure"
       }
      }
     },
     "auth_ref": [
      "r1287"
     ]
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardTmgPredtrmndFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Predetermined"
       }
      }
     },
     "auth_ref": [
      "r1287"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Underlying Securities"
       }
      }
     },
     "auth_ref": [
      "r1290"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardsCloseToMnpiDiscIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Name",
        "label": "Awards Close in Time to MNPI Disclosures, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r1289"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardsCloseToMnpiDiscTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table]"
       }
      }
     },
     "auth_ref": [
      "r1288"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "AwardsCloseToMnpiDiscTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures, Table"
       }
      }
     },
     "auth_ref": [
      "r1288"
     ]
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation and Use of Estimates",
        "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": [
      "r1403"
     ]
    },
    "TGLS_BillingsInExcessOfCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "BillingsInExcessOfCosts",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Billings in excess of costs",
        "documentation": "Liability attributable to (i) billings in excess of costs under the percentage of completion contract accounting method representing the difference between contractually invoiced amounts (billings) and revenue recognized based, for example, on costs incurred to estimated total costs at period end or (ii) contractually invoiced amounts (billings) in excess of costs incurred and accumulated under the completed contract accounting method."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessAcquisitionAcquireeDomain",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination or series of individually immaterial business combinations."
       }
      }
     },
     "auth_ref": [
      "r302",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r605",
      "r606",
      "r607",
      "r932",
      "r1058",
      "r1115",
      "r1116",
      "r1511",
      "r1515",
      "r1517"
     ]
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessAcquisitionAxis",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination [Axis]",
        "documentation": "Information by business combination or series of individually immaterial business combinations."
       }
      }
     },
     "auth_ref": [
      "r302",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r605",
      "r606",
      "r607",
      "r932",
      "r1058",
      "r1115",
      "r1116",
      "r1511",
      "r1515",
      "r1517"
     ]
    },
    "us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessAcquisitionCostOfAcquiredEntityTransactionCosts",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Acquisition-related costs",
        "documentation": "Amount of transaction cost incurred to effect business combination. Excludes separately recognized transaction and indirect cost."
       }
      }
     },
     "auth_ref": [
      "r1513"
     ]
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessAcquisitionLineItems",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination [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": [
      "r302",
      "r547",
      "r548",
      "r549",
      "r550",
      "r556",
      "r557",
      "r558",
      "r559",
      "r565",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595",
      "r601",
      "r602",
      "r603",
      "r607",
      "r1119",
      "r1128",
      "r1511",
      "r1515",
      "r1517"
     ]
    },
    "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationAndAssetAcquisitionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination, Asset Acquisition, Transaction between Entities under Common Control, and Joint Venture Formation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationConsiderationTransferred1",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total purchase price",
        "verboseLabel": "Purchase price of interest",
        "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": [
      "r591",
      "r603",
      "r1119",
      "r1124"
     ]
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/Acquisitions"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Acquisitions",
        "documentation": "The entire disclosure for business combination."
       }
      }
     },
     "auth_ref": [
      "r546",
      "r547",
      "r551",
      "r560",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r571",
      "r572",
      "r578",
      "r581",
      "r582",
      "r588",
      "r589",
      "r590",
      "r598",
      "r602",
      "r603",
      "r604",
      "r606",
      "r608",
      "r1119",
      "r1120",
      "r1121",
      "r1122",
      "r1125",
      "r1126",
      "r1127"
     ]
    },
    "us-gaap_BusinessCombinationPriceOfAcquisitionExpected": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationPriceOfAcquisitionExpected",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchase price for acquisition",
        "documentation": "Purchase price of expected business acquisition prior to consideration being transferred. Excludes asset acquisition."
       }
      }
     },
     "auth_ref": [
      "r1513"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Right-of-use assets",
        "documentation": "Amount of asset acquired in business combination and recognized at acquisition date."
       }
      }
     },
     "auth_ref": [
      "r576",
      "r581"
     ]
    },
    "TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Billings in excess of cost and profit",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed billings in excess of cost and profit."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and equivalents",
        "documentation": "Amount of cash and cash equivalent acquired in business combination and recognized at acquisition date."
       }
      }
     },
     "auth_ref": [
      "r1516",
      "r1518"
     ]
    },
    "TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Backlog",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed contract backlog."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Current Assets",
        "documentation": "Amount of asset acquired in business combination and recognized at acquisition date, classified as other and current."
       }
      }
     },
     "auth_ref": [
      "r1516",
      "r1518"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable",
        "documentation": "Amount of receivable acquired in business combination and recognized at acquisition date, classified as current. Includes, but is not limited to, receivable from customer for product and service."
       }
      }
     },
     "auth_ref": [
      "r1516",
      "r1518"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Account payable",
        "label": "Business Combination, Recognized Liability Assumed, Accounts Payable, Current",
        "documentation": "Amount of accounts payable assumed in business combination and recognized at acquisition date, classified as current."
       }
      }
     },
     "auth_ref": [
      "r1516",
      "r1518"
     ]
    },
    "TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued expenses",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed current liabilities accrued expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade Name",
        "documentation": "Amount of identifiable finite-lived intangible asset acquired in business combination and recognized at acquisition date."
       }
      }
     },
     "auth_ref": [
      "r1516",
      "r1518"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Land contribution value",
        "documentation": "Amount of land acquired in business combination and recognized at acquisition date."
       }
      }
     },
     "auth_ref": [
      "r1516",
      "r1518"
     ]
    },
    "TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease liabilities",
        "documentation": "Amount of lease liabilities assumed in business combination and recognized at acquisition date, classified as current."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total identifiable net assets",
        "label": "Business Combination, Recognized Asset Acquired to Liability Assumed, Excess (Less)",
        "documentation": "Amount of asset acquired in excess of (less than) liability assumed in business combination and recognized at acquisition date. Excludes goodwill."
       }
      }
     },
     "auth_ref": [
      "r1119",
      "r1124",
      "r1516",
      "r1518"
     ]
    },
    "TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notice of Acceptance and FBC permits",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed notice of acceptance and permits."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, plant, and equipment",
        "documentation": "Amount of property, plant, and equipment acquired in business combination and recognized at acquisition date."
       }
      }
     },
     "auth_ref": [
      "r1119",
      "r1124",
      "r1516",
      "r1518"
     ]
    },
    "TGLS_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Service revenue deposit",
        "documentation": "Business combination recognized identifiable assets acquired and liabilities assumed service revenue deposit."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Goodwill",
        "label": "Business Combination, Recognized Asset Acquired to Liability Assumed, Excess (Less), and Goodwill",
        "documentation": "Amount of asset acquired in excess of (less than) liability assumed plus goodwill in business combination and recognized at acquisition date."
       }
      }
     },
     "auth_ref": [
      "r1516",
      "r1518"
     ]
    },
    "TGLS_CEOAndCOOMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "CEOAndCOOMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CEO and COO [Member]",
        "documentation": "CEO and COO [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "country_CO": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2026",
     "localname": "CO",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails",
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "COLOMBIA"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and cash equivalents",
        "documentation": "Amount of cash and cash equivalent. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r89",
      "r153",
      "r156",
      "r1063",
      "r1585"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "CASH AND CASH EQUIVALENTS - Beginning of period",
        "periodEndLabel": "CASH AND CASH EQUIVALENTS - End of period",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Including Discontinued Operation",
        "documentation": "Amount of cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r153",
      "r156"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "NET (DECREASE) INCREASE IN CASH AND CASH EQUIVALENTS",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Period Increase (Decrease), Including Exchange Rate Effect and Discontinued Operation",
        "documentation": "Amount of increase (decrease) in cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including effect from exchange rate change and including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r41"
     ]
    },
    "TGLS_CashContributionsForSocialCauses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "CashContributionsForSocialCauses",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash contributions for social causes",
        "documentation": "Cash contributions for social causes"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_CashPaidDuringPeriodForInterestAndTaxesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "CashPaidDuringPeriodForInterestAndTaxesAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash paid during the period for:",
        "documentation": "Cash Paid During Period For Interest And Taxes [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ChangedPeerGroupFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changed Peer Group, Footnote"
       }
      }
     },
     "auth_ref": [
      "r1267"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "CityAreaCode",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_CoSelectedMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "CoSelectedMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Amount"
       }
      }
     },
     "auth_ref": [
      "r1268"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "CoSelectedMeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Name"
       }
      }
     },
     "auth_ref": [
      "r1268"
     ]
    },
    "TGLS_CommercialMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "CommercialMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commercial [Member]",
        "documentation": "Commercial [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r337",
      "r338",
      "r1045",
      "r1467",
      "r1472",
      "r1473"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommonStockMember",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r112",
      "r421",
      "r831",
      "r832",
      "r843",
      "r1202",
      "r1203",
      "r1204",
      "r1206",
      "r1207",
      "r1208",
      "r1211",
      "r1414",
      "r1415",
      "r1419",
      "r1548",
      "r1635",
      "r1643"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ordinary shares, par value",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r1335",
      "r1493",
      "r1586",
      "r1587",
      "r1590"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ordinary shares, shares authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r112",
      "r421",
      "r831",
      "r832",
      "r843",
      "r967"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ordinary shares, shares 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": [
      "r112",
      "r421",
      "r831",
      "r832",
      "r843"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ordinary shares, shares outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r112",
      "r421",
      "r831",
      "r832",
      "r843",
      "r967",
      "r986",
      "r1490",
      "r1643",
      "r1644"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ordinary shares, $0.0001 par value, 100,000,000 shares authorized, 46,389,046 shares issued, and 44,364,716 shares outstanding at June 30, 2026; and, 46,389,146 shares issued, and 44,737,726 shares outstanding at December 31, 2025",
        "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": [
      "r112",
      "r390",
      "r396",
      "r421",
      "r831",
      "r832",
      "r843",
      "r885",
      "r1180"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Company Selected Measure"
       }
      }
     },
     "auth_ref": [
      "r1273"
     ]
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "CompActuallyPaidVsNetIncomeTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Net Income"
       }
      }
     },
     "auth_ref": [
      "r1272"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "CompActuallyPaidVsOtherMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Other Measure"
       }
      }
     },
     "auth_ref": [
      "r1274"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Total Shareholder Return"
       }
      }
     },
     "auth_ref": [
      "r1271"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ComprehensiveIncomeNetOfTaxAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other comprehensive income:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total Comprehensive income",
        "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r48",
      "r132",
      "r134",
      "r139",
      "r849",
      "r897"
     ]
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ConsolidationPolicyTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Principles 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": [
      "r21",
      "r1086"
     ]
    },
    "us-gaap_ConstructionContractorReceivableRetainage": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ConstructionContractorReceivableRetainage",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_ContractWithCustomerAssetGrossCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retainage",
        "documentation": "Amount of right to consideration in exchange for good or service transferred to customer withheld under retainage provision in long-term contract or program when right to consideration is unconditional."
       }
      }
     },
     "auth_ref": [
      "r82",
      "r114",
      "r793"
     ]
    },
    "TGLS_ContiglassAssetAcquisitionLLCMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ContiglassAssetAcquisitionLLCMember",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contiglass Asset Acquisition LLC [Member]",
        "documentation": "Contiglass Asset Acquisition LLC [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_ContractAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ContractAssetsMember",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Assets [Member]",
        "documentation": "Contract Assets [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_ContractBacklogMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ContractBacklogMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Backlog [Member]",
        "documentation": "Contract Backlog [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_ContractLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ContractLiabilitiesMember",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Liabilities [Member]",
        "documentation": "Contract Liabilities [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Contract Assets and Liabilities",
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability."
       }
      }
     },
     "auth_ref": [
      "r1501"
     ]
    },
    "us-gaap_ContractWithCustomerAssetGrossCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerAssetGrossCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total contract assets",
        "label": "Contract with Customer, Asset, before Allowance for Credit Loss, Current",
        "documentation": "Amount, before 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": [
      "r1499",
      "r1500"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerAssetNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": "TGLS_NetContractLiabilitiesAssets",
       "weight": 1.0,
       "order": 1.0
      },
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets \u2013 current portion",
        "verboseLabel": "Less: current portion",
        "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": [
      "r441",
      "r443",
      "r445",
      "r456"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNetNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerAssetNetNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": "TGLS_NetContractLiabilitiesAssets",
       "weight": 1.0,
       "order": 2.0
      },
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets \u2013 non-current",
        "verboseLabel": "Contract Assets \u2013 non-current",
        "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 noncurrent."
       }
      }
     },
     "auth_ref": [
      "r441",
      "r443",
      "r445",
      "r456"
     ]
    },
    "us-gaap_ContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerLiability",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total contract liabilities",
        "label": "Contract with Customer, Liability",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r441",
      "r442",
      "r445",
      "r456"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": "TGLS_NetContractLiabilitiesAssets",
       "weight": -1.0,
       "order": 3.0
      },
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract liability \u2013 current portion",
        "negatedLabel": "Contract liabilities \u2014 current",
        "verboseLabel": "Less: current portion",
        "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": [
      "r441",
      "r442",
      "r445",
      "r456",
      "r1068"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 2.0
      },
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": "TGLS_NetContractLiabilitiesAssets",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract liability \u2013 non-current",
        "negatedLabel": "Contract liabilities \u2014 non-current",
        "verboseLabel": "Contract liabilities \u2013 non-current",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r441",
      "r442",
      "r445",
      "r456"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales related to contract liabilities",
        "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": [
      "r457"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Cost of sales",
        "label": "Cost of Product and Service Sold",
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r30",
      "r794",
      "r1077",
      "r1085",
      "r1160",
      "r1393"
     ]
    },
    "dei_CountryRegion": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "CountryRegion",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Country Region",
        "documentation": "Region code of country"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CreditFacilityAxis",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Facility [Axis]",
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r96",
      "r347",
      "r831",
      "r832",
      "r836",
      "r1485"
     ]
    },
    "us-gaap_CreditFacilityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "CreditFacilityDomain",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r96",
      "r347",
      "r831",
      "r832",
      "r836",
      "r1485"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Total current income tax",
        "label": "Current Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r531",
      "r1404",
      "r1409"
     ]
    },
    "us-gaap_DebtCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Short-term debt and current portion of long-term debt",
        "documentation": "Amount of debt and lease obligation, classified as current."
       }
      }
     },
     "auth_ref": [
      "r1328"
     ]
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/Debt"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt",
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants."
       }
      }
     },
     "auth_ref": [
      "r46",
      "r87",
      "r88",
      "r96",
      "r97",
      "r100",
      "r102",
      "r103",
      "r105",
      "r106",
      "r160",
      "r162",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r346",
      "r347",
      "r357",
      "r363",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r373",
      "r380",
      "r381",
      "r383",
      "r677",
      "r730",
      "r831",
      "r832",
      "r840"
     ]
    },
    "us-gaap_DebtInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtInstrumentAxis",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [Axis]",
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r88",
      "r96",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r106",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r364",
      "r369",
      "r370",
      "r371",
      "r372",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r415",
      "r831",
      "r832",
      "r840",
      "r1101",
      "r1102",
      "r1103",
      "r1104",
      "r1105",
      "r1178",
      "r1404",
      "r1405",
      "r1406",
      "r1413",
      "r1468",
      "r1469",
      "r1470",
      "r1574",
      "r1575",
      "r1591"
     ]
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt instrument basis spread on variable rate",
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtInstrumentCarryingAmount",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total obligations under borrowing arrangements",
        "label": "Long-Term Debt, Gross",
        "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt."
       }
      }
     },
     "auth_ref": [
      "r384",
      "r1586",
      "r1587",
      "r1588"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtInstrumentInterestRateEffectivePercentage",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt instrument interest rate effective percentage",
        "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium."
       }
      }
     },
     "auth_ref": [
      "r386",
      "r730",
      "r731",
      "r1178",
      "r1325",
      "r1329",
      "r1586",
      "r1587",
      "r1588"
     ]
    },
    "us-gaap_DebtInstrumentMaturityDateDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtInstrumentMaturityDateDescription",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loan maturity period description",
        "documentation": "Description of the maturity date of the debt instrument including whether the debt matures serially and, if so, a brief description of the serial maturities."
       }
      }
     },
     "auth_ref": [
      "r1325",
      "r1330"
     ]
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtInstrumentNameDomain",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r88",
      "r96",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r106",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r364",
      "r369",
      "r370",
      "r371",
      "r372",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r415",
      "r831",
      "r832",
      "r840",
      "r1101",
      "r1102",
      "r1103",
      "r1104",
      "r1105",
      "r1178",
      "r1404",
      "r1405",
      "r1406",
      "r1413",
      "r1468",
      "r1469",
      "r1470",
      "r1574",
      "r1575",
      "r1591"
     ]
    },
    "us-gaap_DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtSecuritiesHeldToMaturityAllowanceForCreditLossTable",
     "presentation": [
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Securities, Held-to-Maturity, Allowance for Credit Loss [Table]",
        "documentation": "Disclosure of information about allowance for credit loss on investment in debt security measured at amortized cost (held-to-maturity)."
       }
      }
     },
     "auth_ref": [
      "r274",
      "r275",
      "r283",
      "r284"
     ]
    },
    "us-gaap_DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtSecuritiesHeldtomaturityAllowanceForCreditLossLineItems",
     "presentation": [
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Securities, Held-to-Maturity, Allowance for Credit Loss [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",
      "r283",
      "r284"
     ]
    },
    "us-gaap_DebtWeightedAverageInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DebtWeightedAverageInterestRate",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt, weighted average interest rate",
        "documentation": "Weighted average interest rate of debt outstanding."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_DeductedFromProceedsFromIssuanceOfDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "DeductedFromProceedsFromIssuanceOfDebt",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deducted from proceeds from debt",
        "documentation": "Deducted from proceeds from issuance of debt."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_DeferredCostOfFinancing": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "DeferredCostOfFinancing",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred cost of financing",
        "documentation": "Deferred cost of financing"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredCostsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DeferredCostsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: Deferred cost of financing",
        "label": "Deferred Costs, Current",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of deferred costs capitalized at the end of the reporting period that are expected to be charged against earnings within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1067",
      "r1341"
     ]
    },
    "TGLS_DeferredCostsOfFinancing": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "DeferredCostsOfFinancing",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Deferred cost of financing",
        "documentation": "Deferred costs of financing",
        "label": "Deferred costs of financing"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredFinanceCostsNoncurrentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DeferredFinanceCostsNoncurrentNet",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred financing costs",
        "documentation": "Amount, after accumulated amortization, of debt issuance costs classified as noncurrent. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs."
       }
      }
     },
     "auth_ref": [
      "r1573",
      "r1574",
      "r1575"
     ]
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred income taxes",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r518",
      "r519"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Total deferred income tax",
        "label": "Deferred Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r59",
      "r1404",
      "r1409"
     ]
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Deferred income taxes",
        "label": "Deferred Income Tax Liabilities, Net",
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r518",
      "r519",
      "r831",
      "r832",
      "r837",
      "r882"
     ]
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCredits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DeferredIncomeTaxesAndTaxCredits",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Deferred income taxes",
        "label": "Deferred Income Taxes and Tax Credits",
        "documentation": "Amount of deferred income tax expense (benefit) and income tax credits."
       }
      }
     },
     "auth_ref": [
      "r43"
     ]
    },
    "us-gaap_DefinedBenefitPlanDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DefinedBenefitPlanDisclosureLineItems",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "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": [
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485"
     ]
    },
    "us-gaap_DepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DepreciationAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r5",
      "r1459",
      "r1465"
     ]
    },
    "us-gaap_DerivativeAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeAssets",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative assets",
        "documentation": "Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset."
       }
      }
     },
     "auth_ref": [
      "r126",
      "r127",
      "r673",
      "r701",
      "r702",
      "r710",
      "r713",
      "r714",
      "r715",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r954",
      "r955",
      "r956",
      "r957",
      "r958",
      "r973",
      "r974",
      "r1027",
      "r1029",
      "r1030",
      "r1031",
      "r1032",
      "r1033",
      "r1071",
      "r1073",
      "r1074",
      "r1075",
      "r1166",
      "r1169",
      "r1176",
      "r1177",
      "r1204",
      "r1552",
      "r1553",
      "r1554",
      "r1636"
     ]
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeContractTypeDomain",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails",
      "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset."
       }
      }
     },
     "auth_ref": [
      "r142",
      "r629",
      "r631",
      "r632",
      "r634",
      "r635",
      "r636",
      "r637",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r772",
      "r956",
      "r958",
      "r972",
      "r973",
      "r974",
      "r976",
      "r977",
      "r978",
      "r979",
      "r981",
      "r982",
      "r983",
      "r984",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1027",
      "r1028",
      "r1030",
      "r1032",
      "r1071",
      "r1072",
      "r1075",
      "r1161",
      "r1162",
      "r1181",
      "r1202",
      "r1204",
      "r1343",
      "r1344",
      "r1345",
      "r1346",
      "r1347",
      "r1348",
      "r1349",
      "r1350",
      "r1351",
      "r1542",
      "r1543",
      "r1544",
      "r1545",
      "r1555",
      "r1556",
      "r1557",
      "r1558",
      "r1559",
      "r1560",
      "r1562",
      "r1563"
     ]
    },
    "TGLS_DerivativeFinancialInstrumentGain": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "DerivativeFinancialInstrumentGain",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative financial instrument loss",
        "documentation": "Derivative financial instrument gain"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DerivativeFixedInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeFixedInterestRate",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative fixed interest rate",
        "documentation": "Fixed interest rate related to the interest rate derivative."
       }
      }
     },
     "auth_ref": [
      "r1541"
     ]
    },
    "TGLS_DerivativeGainLossesOnDerivativeNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "DerivativeGainLossesOnDerivativeNet",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives",
        "documentation": "Derivative gain losses on derivative net."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeInstrumentRiskAxis",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails",
      "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instrument [Axis]",
        "documentation": "Information by type of derivative contract."
       }
      }
     },
     "auth_ref": [
      "r142",
      "r629",
      "r631",
      "r632",
      "r634",
      "r635",
      "r636",
      "r637",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r772",
      "r956",
      "r958",
      "r972",
      "r973",
      "r974",
      "r976",
      "r977",
      "r978",
      "r979",
      "r981",
      "r982",
      "r983",
      "r984",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1027",
      "r1028",
      "r1030",
      "r1032",
      "r1071",
      "r1072",
      "r1075",
      "r1161",
      "r1162",
      "r1181",
      "r1202",
      "r1204",
      "r1343",
      "r1344",
      "r1345",
      "r1346",
      "r1347",
      "r1348",
      "r1349",
      "r1350",
      "r1351",
      "r1542",
      "r1543",
      "r1544",
      "r1545",
      "r1555",
      "r1556",
      "r1557",
      "r1558",
      "r1559",
      "r1560",
      "r1562",
      "r1563"
     ]
    },
    "us-gaap_DerivativeInstrumentsAndHedges": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeInstrumentsAndHedges",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total derivative assets",
        "verboseLabel": "Accumulated other comprehensive income net of tax",
        "documentation": "Carrying amount as of the balance sheet date of the asset arising from derivative instruments and hedging activities, which are expected to be converted into cash or otherwise disposed of within a year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1341"
     ]
    },
    "us-gaap_DerivativeInstrumentsAndHedgesLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeInstrumentsAndHedgesLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total derivative liabilities",
        "documentation": "Sum as of the balance sheet date of the (a) fair values of all liabilities resulting from contracts that meet the criteria of being accounted for as derivative instruments, and (b) the carrying amounts of the liabilities arising from financial instruments or contracts used to mitigate a specified risk (hedge), and which are expected to be extinguished or otherwise disposed of within a year or the normal operating cycle, if longer, net of the effects of master netting arrangements."
       }
      }
     },
     "auth_ref": [
      "r1328"
     ]
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Financial Instruments and Fair Value Measurements",
        "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts."
       }
      }
     },
     "auth_ref": [
      "r410",
      "r411",
      "r413",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r659",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r683",
      "r1161",
      "r1162",
      "r1163",
      "r1164",
      "r1165"
     ]
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails",
      "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments, Gain (Loss) [Table]",
        "documentation": "Disclosure of information about the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments."
       }
      }
     },
     "auth_ref": [
      "r631",
      "r632",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r1162"
     ]
    },
    "us-gaap_DerivativeInstrumentsGainLossLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativeInstrumentsGainLossLineItems",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails",
      "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Instruments, Gain (Loss) [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": [
      "r631",
      "r632",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r657",
      "r1162"
     ]
    },
    "us-gaap_DerivativesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DerivativesPolicyTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Derivative Financial Instruments",
        "documentation": "Disclosure of accounting policy for its derivative instruments and hedging activities."
       }
      }
     },
     "auth_ref": [
      "r157",
      "r160",
      "r168",
      "r618",
      "r658",
      "r672",
      "r674",
      "r675",
      "r676",
      "r678",
      "r682"
     ]
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails",
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails",
      "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [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": [
      "r454",
      "r455",
      "r1108",
      "r1109",
      "r1110",
      "r1111",
      "r1112",
      "r1113",
      "r1114"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails",
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails",
      "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [Table]",
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r454",
      "r455",
      "r1108",
      "r1109",
      "r1110",
      "r1111",
      "r1112",
      "r1113",
      "r1114"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Disaggregation by 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": [
      "r1502"
     ]
    },
    "us-gaap_DividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DividendsCommonStock",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Dividend ($0.15 per share)",
        "label": "Dividends, Common Stock",
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK)."
       }
      }
     },
     "auth_ref": [
      "r424",
      "r426"
     ]
    },
    "us-gaap_DividendsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DividendsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r1328"
     ]
    },
    "dei_DocumentAccountingStandard": {
     "xbrltype": "accountingStandardItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentAccountingStandard",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Accounting Standard",
        "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'."
       }
      }
     },
     "auth_ref": [
      "r1228"
     ]
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1226",
      "r1228",
      "r1240"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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_DocumentPeriodStartDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentPeriodStartDate",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period Start Date",
        "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r1227"
     ]
    },
    "dei_DocumentRegistrationStatement": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentRegistrationStatement",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Registration Statement",
        "documentation": "Boolean flag that is true only for a form used as a registration statement."
       }
      }
     },
     "auth_ref": [
      "r1215"
     ]
    },
    "dei_DocumentShellCompanyEventDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentShellCompanyEventDate",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Event Date",
        "documentation": "Date of event requiring a shell company report."
       }
      }
     },
     "auth_ref": [
      "r1228"
     ]
    },
    "dei_DocumentShellCompanyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentShellCompanyReport",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Report",
        "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r1228"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1261"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentType",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": []
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Documents Incorporated by Reference [Text Block]",
        "documentation": "Documents incorporated by reference."
       }
      }
     },
     "auth_ref": [
      "r1218"
     ]
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic income per share",
        "verboseLabel": "Basic earnings per ordinary 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": [
      "r65",
      "r140",
      "r173",
      "r175",
      "r176",
      "r177",
      "r178",
      "r180",
      "r181",
      "r182",
      "r184",
      "r189",
      "r191",
      "r193",
      "r194",
      "r195",
      "r196",
      "r321",
      "r388",
      "r461",
      "r515",
      "r544",
      "r610",
      "r699",
      "r700",
      "r850",
      "r898",
      "r1087"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted income per share",
        "verboseLabel": "Diluted earnings per ordinary 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": [
      "r65",
      "r140",
      "r173",
      "r175",
      "r176",
      "r177",
      "r178",
      "r180",
      "r181",
      "r182",
      "r184",
      "r191",
      "r193",
      "r194",
      "r195",
      "r196",
      "r321",
      "r388",
      "r461",
      "r515",
      "r544",
      "r610",
      "r699",
      "r700",
      "r850",
      "r898",
      "r1087"
     ]
    },
    "TGLS_EffectOfDilutiveSecuritiesAndStockDividend": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "EffectOfDilutiveSecuritiesAndStockDividend",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effect of dilutive securities and stock dividend",
        "documentation": "Effect of dilutive securities and stock dividend."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effect of exchange rate changes on cash and cash equivalents",
        "documentation": "Amount of increase (decrease) from effect of exchange rate change on cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; held in foreign currency; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r1572"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective tax rate",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r521",
      "r1118"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "presentation": [
      "http://tecnoglass.com/role/IncomeTaxesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statutory income tax rate",
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r165",
      "r521",
      "r534",
      "r1118"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "presentation": [
      "http://tecnoglass.com/role/IncomeTaxesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted average statutory rate",
        "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": [
      "r522",
      "r1118",
      "r1404",
      "r1410",
      "r1503"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityAddressAddressLine3",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityAddressCountry",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityBankruptcyProceedingsReportingCurrent",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Bankruptcy Proceedings, Reporting Current",
        "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not. Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element."
       }
      }
     },
     "auth_ref": [
      "r1221"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1217"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r1217"
     ]
    },
    "dei_EntityExTransitionPeriod": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityExTransitionPeriod",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Elected Not To Use the Extended Transition Period",
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards."
       }
      }
     },
     "auth_ref": [
      "r1304"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1217"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1301"
     ]
    },
    "dei_EntityListingParValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityListingParValuePerShare",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Listing, Par Value Per Share",
        "documentation": "The par value per share of security quoted in same currency as Trading currency. Example: '0.01'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityPrimarySicNumber": {
     "xbrltype": "sicNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityPrimarySicNumber",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Primary SIC Number",
        "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity."
       }
      }
     },
     "auth_ref": [
      "r1240"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1217"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1217"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r1217"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1217"
     ]
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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/2026",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "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": [
      "r1302"
     ]
    },
    "ecd_EqtyAwrdsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "EqtyAwrdsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r1266"
     ]
    },
    "us-gaap_EquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r65",
      "r80",
      "r111",
      "r112",
      "r135",
      "r136",
      "r137",
      "r170",
      "r171",
      "r172",
      "r174",
      "r182",
      "r185",
      "r187",
      "r198",
      "r268",
      "r271",
      "r320",
      "r321",
      "r322",
      "r387",
      "r414",
      "r419",
      "r420",
      "r421",
      "r424",
      "r426",
      "r429",
      "r459",
      "r460",
      "r462",
      "r463",
      "r515",
      "r532",
      "r533",
      "r541",
      "r542",
      "r543",
      "r545",
      "r609",
      "r610",
      "r679",
      "r680",
      "r681",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r698",
      "r723",
      "r724",
      "r725",
      "r726",
      "r727",
      "r728",
      "r732",
      "r744",
      "r791",
      "r831",
      "r832",
      "r842",
      "r843",
      "r876",
      "r895",
      "r920",
      "r921",
      "r922",
      "r945",
      "r1012",
      "r1498"
     ]
    },
    "TGLS_EquityMethodIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "EquityMethodIncome",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity method (loss) income",
        "documentation": "Equity method income."
       }
      }
     },
     "auth_ref": []
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "EquityMethodInvesteeNameDomain",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "auth_ref": [
      "r264",
      "r265",
      "r266",
      "r540",
      "r717",
      "r1306",
      "r1307",
      "r1308",
      "r1506",
      "r1507",
      "r1508",
      "r1509"
     ]
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "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": [
      "r264",
      "r717"
     ]
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "EquityValuationAssumptionDifferenceFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Valuation Assumption Difference, Footnote"
       }
      }
     },
     "auth_ref": [
      "r1270"
     ]
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ErrCompAnalysisTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneous Compensation Analysis"
       }
      }
     },
     "auth_ref": [
      "r1233",
      "r1244",
      "r1254",
      "r1280"
     ]
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ErrCompRecoveryTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneously Awarded Compensation Recovery [Table]"
       }
      }
     },
     "auth_ref": [
      "r1230",
      "r1241",
      "r1251",
      "r1277"
     ]
    },
    "ecd_ExecutiveCategoryAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Category [Axis]"
       }
      }
     },
     "auth_ref": [
      "r1276"
     ]
    },
    "TGLS_ExpectedOwnershipPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ExpectedOwnershipPercentage",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Expected ownership percentage",
        "documentation": "Expected ownership percentage."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ExtendedProductWarrantyPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ExtendedProductWarrantyPolicy",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranties",
        "documentation": "Disclosure of accounting policy for extended product warranties and other guarantee contracts including the methodology for measuring the liability."
       }
      }
     },
     "auth_ref": [
      "r1480"
     ]
    },
    "dei_Extension": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "Extension",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Extension",
        "documentation": "Extension number for local phone number."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_ExternalCustomersMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ExternalCustomersMember",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "External Customers [Member]",
        "documentation": "External Customers [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueByLiabilityClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueByLiabilityClassAxis",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liability Class [Axis]",
        "documentation": "Information by class of liability."
       }
      }
     },
     "auth_ref": [
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r711"
     ]
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents classes of liabilities measured and disclosed at fair value."
       }
      }
     },
     "auth_ref": [
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r711"
     ]
    },
    "us-gaap_FairValueOfAssetsAcquired": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueOfAssetsAcquired",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets acquired under credit or debt",
        "documentation": "The fair value of assets acquired in noncash investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r1402"
     ]
    },
    "TGLS_FebruaryTwentyEightThousandThirtyThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FebruaryTwentyEightThousandThirtyThreeMember",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "February 28, 2023 [Member]",
        "documentation": "February 28, 2023 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_FinanceLeaseDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FinanceLeaseDebt",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease",
        "documentation": "Finance lease debt."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseInterestExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseInterestExpense",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Interest expense",
        "label": "Finance Lease, Interest Expense",
        "documentation": "Amount of interest expense on finance lease liability."
       }
      }
     },
     "auth_ref": [
      "r735",
      "r737",
      "r1179"
     ]
    },
    "us-gaap_FinanceLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Present value of lease liability",
        "label": "Finance Lease, Liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease."
       }
      }
     },
     "auth_ref": [
      "r734",
      "r741"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiabilityMaturityTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Future Minimum Lease Payments",
        "documentation": "Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position."
       }
      }
     },
     "auth_ref": [
      "r1576"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total undiscounted cashflows",
        "label": "Finance Lease, Liability, to be Paid",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r741",
      "r1405",
      "r1413",
      "r1591"
     ]
    },
    "TGLS_FinanceLeaseLiabilityPaymentsDueAfterYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFour",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2030 and thereafter",
        "documentation": "Finance lease liability payments due after year four."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "Finance Lease, Liability, to be Paid, Year One",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": [
      "r741",
      "r1405",
      "r1413",
      "r1591"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2029",
        "label": "Finance Lease, Liability, to be Paid, Year Four",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": [
      "r741",
      "r1405",
      "r1413",
      "r1591"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2028",
        "label": "Finance Lease, Liability, to be Paid, Year Three",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": [
      "r741",
      "r1405",
      "r1413",
      "r1591"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "Finance Lease, Liability, to be Paid, Year Two",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": [
      "r741",
      "r1405",
      "r1413",
      "r1591"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFutureMinimumLeasePaymentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Less: Imputed Interest",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "TGLS_FinanceLeaseLongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FinanceLeaseLongTermDebt",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease, long-term debt",
        "documentation": "Finance lease long term debt."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeasePrincipalPayments",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash paid for amounts included in the measurement of lease liabilities",
        "documentation": "Amount of cash outflow for principal payment on finance lease."
       }
      }
     },
     "auth_ref": [
      "r736",
      "r738"
     ]
    },
    "TGLS_FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash paid for amounts included in measurement of lease liabilities classified as financing cash flows",
        "documentation": "Finance lease principal payments classified as financing cash flows."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash paid for amounts included in measurement of lease liabilities classified as operating cash flows",
        "documentation": "Finance lease principal payments classified as operating cash flows."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseRightOfUseAsset",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Right-of-use assets",
        "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization",
        "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease."
       }
      }
     },
     "auth_ref": [
      "r733"
     ]
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ROU asset amortization",
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease."
       }
      }
     },
     "auth_ref": [
      "r735",
      "r737",
      "r1179"
     ]
    },
    "TGLS_FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease right of use asset included property, plant and equipment, and lease liabilities",
        "documentation": "Finance lease right of use asset included property plant and equipment and lease liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_FinanceLeaseShortTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FinanceLeaseShortTermDebt",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease, short-term debt",
        "documentation": "Finance lease short term debt."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average discount rate",
        "documentation": "Weighted average discount rate for finance lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r740",
      "r1179"
     ]
    },
    "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average remaining lease term",
        "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r739",
      "r1179"
     ]
    },
    "us-gaap_FinancialInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FinancialInstrumentAxis",
     "presentation": [
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instrument [Axis]",
        "documentation": "Information by type of financial instrument."
       }
      }
     },
     "auth_ref": [
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r273",
      "r274",
      "r275",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r382",
      "r412",
      "r677",
      "r712",
      "r716",
      "r718",
      "r754",
      "r755",
      "r756",
      "r757",
      "r758",
      "r759",
      "r761",
      "r762",
      "r763",
      "r764",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r773",
      "r774",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r783",
      "r784",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r878",
      "r896",
      "r1097",
      "r1166",
      "r1168",
      "r1169",
      "r1170",
      "r1171",
      "r1172",
      "r1173",
      "r1174",
      "r1175",
      "r1312",
      "r1313",
      "r1314",
      "r1315",
      "r1316",
      "r1317",
      "r1318",
      "r1442",
      "r1443",
      "r1444",
      "r1445",
      "r1550",
      "r1552",
      "r1553",
      "r1554",
      "r1561",
      "r1564",
      "r1565",
      "r1566"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible asset, finite-lived, useful life",
        "documentation": "Useful life of finite-lived intangible asset, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r319"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Intangible assets, Accumulated amortization",
        "label": "Intangible Asset, Finite-Lived, Accumulated Amortization",
        "documentation": "Amount of accumulated amortization of finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r92",
      "r291",
      "r311",
      "r1061",
      "r1464"
     ]
    },
    "TGLS_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Thereafter",
        "documentation": "Finite lived intangible assets amortization expense after year three."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2027",
        "documentation": "Amount of amortization expense for finite-lived intangible asset 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). Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r313",
      "r1061"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2026",
        "documentation": "Amount of amortization expense for finite-lived intangible asset expected to be recognized in remainder of current fiscal year. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r1460"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2029",
        "documentation": "Amount of amortization expense for finite-lived intangible asset 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). Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r313",
      "r1061"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails": {
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2028",
        "documentation": "Amount of amortization expense for finite-lived intangible asset 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). Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r313",
      "r1061"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Asset, Finite-Lived, Class [Axis]",
        "documentation": "Information by class of finite-lived intangible asset."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r306",
      "r307",
      "r308",
      "r310",
      "r311",
      "r314",
      "r315",
      "r795",
      "r796",
      "r932",
      "r1058",
      "r1061",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1149",
      "r1150",
      "r1151",
      "r1152",
      "r1153",
      "r1154",
      "r1155",
      "r1464",
      "r1646",
      "r1647",
      "r1648"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsGross",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible assets, Gross",
        "documentation": "Amount, before accumulated amortization, of finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r291",
      "r311",
      "r796",
      "r1061",
      "r1464"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Asset, Finite-Lived [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": [
      "r304",
      "r311",
      "r314",
      "r315",
      "r317",
      "r795",
      "r1058",
      "r1061",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1149",
      "r1150",
      "r1151",
      "r1152",
      "r1153",
      "r1154",
      "r1155",
      "r1464",
      "r1646",
      "r1647",
      "r1648"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class of finite-lived intangible asset."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r306",
      "r307",
      "r308",
      "r310",
      "r311",
      "r314",
      "r315",
      "r932",
      "r1058",
      "r1061",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1149",
      "r1150",
      "r1151",
      "r1152",
      "r1153",
      "r1154",
      "r1155",
      "r1464",
      "r1646",
      "r1647",
      "r1648"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails",
      "http://tecnoglass.com/role/ScheduleOfFiniteLivedIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible assets, Net",
        "totalLabel": "Total",
        "documentation": "Amount, after accumulated amortization, of finite-lived intangible asset. Excludes goodwill and capitalized cost for software to be sold, leased, or marketed."
       }
      }
     },
     "auth_ref": [
      "r795",
      "r1458"
     ]
    },
    "TGLS_FixedPriceContractsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FixedPriceContractsMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fixed Price Contracts [Member]",
        "documentation": "Fixed Price Contracts [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_ForeignCurrencyNonDeliveryForwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ForeignCurrencyNonDeliveryForwardsMember",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign Currency Non Delivery Forwards [Member]",
        "documentation": "Foreign Currency Non Delivery Forwards [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency transactions gains",
        "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction."
       }
      }
     },
     "auth_ref": [
      "r144",
      "r719",
      "r720",
      "r721",
      "r722",
      "r1009"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionGainLossUnrealized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ForeignCurrencyTransactionGainLossUnrealized",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Unrealized currency translation gains",
        "label": "Unrealized Gain (Loss), Foreign Currency Transaction, before Tax",
        "documentation": "Amount, before tax, of unrealized gain (loss) from foreign currency transaction."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r987",
      "r1212",
      "r1570",
      "r1571",
      "r1642"
     ]
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount"
       }
      }
     },
     "auth_ref": [
      "r1237",
      "r1248",
      "r1258",
      "r1284"
     ]
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Expense of Enforcement, Amount"
       }
      }
     },
     "auth_ref": [
      "r1237",
      "r1248",
      "r1258",
      "r1284"
     ]
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "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"
       }
      }
     },
     "auth_ref": [
      "r1237",
      "r1248",
      "r1258",
      "r1284"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Explanation of Impracticability"
       }
      }
     },
     "auth_ref": [
      "r1237",
      "r1248",
      "r1258",
      "r1284"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Name",
        "label": "Forgone Recovery, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r1237",
      "r1248",
      "r1258",
      "r1284"
     ]
    },
    "TGLS_FundacionTecnoglassMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FundacionTecnoglassMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fundacion Tecnoglass [Member]",
        "documentation": "Fundacion Tecnoglass [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_FutureAdditionalContributionAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "FutureAdditionalContributionAmount",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional contribution amount",
        "documentation": "Future additional contribution amount."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "GainLossOnDispositionOfAssets1",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Gain on disposal of assets",
        "label": "Gain (Loss) on Disposition of Assets",
        "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."
       }
      }
     },
     "auth_ref": [
      "r1401"
     ]
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss on extinguishment of debt",
        "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r13",
      "r14"
     ]
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "GeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "General and administrative expense",
        "label": "General and Administrative Expense",
        "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": [
      "r33",
      "r990"
     ]
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "Goodwill",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill",
        "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r91",
      "r292",
      "r831",
      "r832",
      "r833",
      "r1094",
      "r1098",
      "r1119",
      "r1123",
      "r1124",
      "r1157",
      "r1167",
      "r1180",
      "r1449",
      "r1450",
      "r1521"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Asset, Goodwill and Other [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gross profit",
        "label": "Gross Profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r31",
      "r160",
      "r163",
      "r164",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r717",
      "r1090",
      "r1093",
      "r1319",
      "r1320",
      "r1424",
      "r1427",
      "r1433",
      "r1436",
      "r1437",
      "r1446",
      "r1486"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income before taxes",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "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": [
      "r27",
      "r50",
      "r851",
      "r853",
      "r892",
      "r1062",
      "r1079",
      "r1082",
      "r1085",
      "r1090",
      "r1093",
      "r1424",
      "r1427",
      "r1433",
      "r1436",
      "r1437"
     ]
    },
    "us-gaap_IncomeLossFromEquityMethodInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeLossFromEquityMethodInvestments",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Equity method income",
        "label": "Equity method income",
        "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss)."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r28",
      "r49",
      "r197",
      "r209",
      "r223",
      "r263",
      "r891"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeStatementAbstract",
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/IncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes",
        "documentation": "The entire disclosure for income tax."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r165",
      "r517",
      "r521",
      "r523",
      "r524",
      "r525",
      "r527",
      "r528",
      "r535",
      "r537",
      "r538",
      "r539",
      "r877",
      "r931",
      "r939",
      "r1118"
     ]
    },
    "us-gaap_IncomeTaxExaminationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeTaxExaminationLineItems",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Examination [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": [
      "r526"
     ]
    },
    "us-gaap_IncomeTaxExaminationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeTaxExaminationTable",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax, Examination [Table]",
        "documentation": "Disclosure of information about income tax examination currently in progress or completed during current period by tax authority. Includes, but is not limited to, description of examination, jurisdiction conducting examination, tax year under examination, likelihood of unfavorable settlement, range of possible loss, liability recorded, increase (decrease) of liability from prior period, and penalty and interest incurred or accrued."
       }
      }
     },
     "auth_ref": [
      "r1504"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Income tax provision",
        "negatedTerseLabel": "Total income provision",
        "label": "Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r60",
      "r160",
      "r186",
      "r187",
      "r197",
      "r210",
      "r223",
      "r520",
      "r521",
      "r536",
      "r899",
      "r1062",
      "r1079",
      "r1082",
      "r1085",
      "r1118"
     ]
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncomeTaxesPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax",
        "documentation": "Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r155",
      "r529",
      "r530"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Trade accounts payable and accrued expenses",
        "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities",
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Trade accounts receivable",
        "label": "Increase (Decrease) in Accounts Receivable",
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Taxes payable",
        "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInCommodityContractAssetsAndLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInCommodityContractAssetsAndLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 19.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Contract assets and liabilities",
        "label": "Increase (Decrease) in Commodity Contract Assets and Liabilities",
        "documentation": "The increase (decrease) during the reporting period in the assets (liabilities) created through trading commodity-based derivative instruments."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInDueToRelatedParties": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInDueToRelatedParties",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 20.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related parties",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations to be paid to the following types of related parties: a parent company and its subsidiaries; subsidiaries of a common parent; an entity and trust for the benefit of employees, such as pension and profit-sharing trusts that are managed by or under the trusteeship of the entities' management; an entity and its principal owners, management, or member of their immediate families; affiliates; or other parties with the ability to exert significant influence."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 17.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Labor liabilities",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Inventories",
        "label": "Increase (Decrease) in Inventories",
        "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": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in operating assets and liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other assets",
        "label": "Increase (Decrease) in Other Operating Assets",
        "documentation": "Amount of increase (decrease) in operating assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInOtherOperatingLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 18.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other liabilities",
        "documentation": "Amount of increase (decrease) in operating liabilities classified as other."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Prepaid expenses",
        "label": "Increase (Decrease) in Prepaid Expense",
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "IndividualAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Individual [Axis]"
       }
      }
     },
     "auth_ref": [
      "r1237",
      "r1248",
      "r1258",
      "r1276",
      "r1284",
      "r1288",
      "r1296"
     ]
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r1294"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r1229",
      "r1300"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "InsiderTrdPoliciesProcAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Adopted"
       }
      }
     },
     "auth_ref": [
      "r1229",
      "r1300"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Not Adopted"
       }
      }
     },
     "auth_ref": [
      "r1229",
      "r1300"
     ]
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IntangibleAssetsDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/IntangibleAssetsAndGoodwill"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets and Goodwill",
        "documentation": "The entire disclosure for intangible asset. Includes, but is not limited to, finite- and indefinite-lived intangible assets, capitalized cost for internal-use software and software to be sold, leased, or marketed. Excludes goodwill."
       }
      }
     },
     "auth_ref": [
      "r91",
      "r303",
      "r316",
      "r318",
      "r1057",
      "r1058"
     ]
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible assets",
        "documentation": "Amount, after accumulated amortization, of finite- and indefinite-lived intangible assets and capitalized cost for software to be sold, leased, or marketed. Excludes goodwill."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r831",
      "r832",
      "r834",
      "r1458",
      "r1461"
     ]
    },
    "us-gaap_InterestEarningAssetsAverageAmountOutstanding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InterestEarningAssetsAverageAmountOutstanding",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest earning assets average outstanding",
        "documentation": "Average amount outstanding of interest-earning assets."
       }
      }
     },
     "auth_ref": [
      "r1313"
     ]
    },
    "us-gaap_InterestExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InterestExpense",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest expense",
        "documentation": "Amount of interest expense classified as operating and nonoperating. Includes, but is not limited to, cost of borrowing accounted for as interest expense."
       }
      }
     },
     "auth_ref": [
      "r197",
      "r202",
      "r206",
      "r212",
      "r223",
      "r729",
      "r1093",
      "r1094",
      "r1639"
     ]
    },
    "TGLS_InterestExpenseAndDeferredCostOfFinancing": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "InterestExpenseAndDeferredCostOfFinancing",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Interest expense, net and deferred cost of financing",
        "documentation": "Interest expense and deferred cost of financing.",
        "label": "InterestExpenseAndDeferredCostOfFinancing"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_InterestExpenseNetOfDeferredCostOfFinancingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "InterestExpenseNetOfDeferredCostOfFinancingMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Expense Net of Deferred Cost of Financing [Member]",
        "documentation": "Interest Expense Net of Deferred Cost of Financing [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_InterestIncomeExpenseNetAndDeferredCostOfFinancing": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "InterestIncomeExpenseNetAndDeferredCostOfFinancing",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInterestIncomeExpensesNetAndDeferredCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest expense, net and deferred cost of financing:",
        "documentation": "Interest income expense net and deferred cost of financing"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest",
        "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": [
      "r148",
      "r151",
      "r154"
     ]
    },
    "TGLS_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfGainsLossesOnDerivativeFinancialInstrumentsQuarterEndedDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Rate Swap Contracts and Foreign Currency Non-delivery Forwards [Member]",
        "documentation": "Interest Rate Swap Contracts and Foreign Currency Non-delivery Forwards [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_InterestRateSwapContractsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "InterestRateSwapContractsMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Rate Swap Contracts [Member]",
        "documentation": "Interest Rate Swap Contracts [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestRateSwapMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InterestRateSwapMember",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Rate Swap [Member]",
        "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period."
       }
      }
     },
     "auth_ref": [
      "r1161",
      "r1209",
      "r1210",
      "r1525",
      "r1526",
      "r1527",
      "r1528",
      "r1529",
      "r1530",
      "r1531",
      "r1532",
      "r1533",
      "r1534",
      "r1535",
      "r1536",
      "r1537",
      "r1538",
      "r1539",
      "r1540"
     ]
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/InventoriesNet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories, net",
        "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": [
      "r290"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finished goods",
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1323",
      "r1336"
     ]
    },
    "us-gaap_InventoryGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryGross",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total Inventories, gross",
        "label": "Inventory, Gross",
        "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": [
      "r1323",
      "r1340"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      },
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories",
        "totalLabel": "Total inventories, net",
        "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": [
      "r83",
      "r123",
      "r1064",
      "r1180"
     ]
    },
    "TGLS_InventoryPackingMaterialGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "InventoryPackingMaterialGross",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Packing material",
        "documentation": "Reflects Gross amount, as of the balance sheet date of packing materials."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryRawMaterials": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryRawMaterials",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Raw materials",
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1323",
      "r1338"
     ]
    },
    "us-gaap_InventoryValuationReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryValuationReserves",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: Inventory allowance",
        "label": "Inventory Valuation Reserves",
        "documentation": "Amount of valuation reserve for inventory."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r1323",
      "r1340"
     ]
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InventoryWorkInProcess",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Work in process",
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1323",
      "r1337"
     ]
    },
    "us-gaap_Investments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "Investments",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Investments",
        "label": "Investments [Default Label]",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all investments."
       }
      }
     },
     "auth_ref": [
      "r879",
      "r880",
      "r1197",
      "r1198",
      "r1199",
      "r1201"
     ]
    },
    "us-gaap_LegalFees": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LegalFees",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cost and fees",
        "label": "Legal Fees",
        "documentation": "The amount of expense provided in the period for legal costs incurred on or before the balance sheet date pertaining to resolved, pending or threatened litigation, including arbitration and mediation proceedings."
       }
      }
     },
     "auth_ref": [
      "r1311",
      "r1640",
      "r1641"
     ]
    },
    "TGLS_LegalReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "LegalReserves",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Reserves",
        "documentation": "Legal reserves."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_LegalReservesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "LegalReservesMember",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Reserves [Member]",
        "documentation": "Legal Reserves [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities",
        "label": "Liabilities",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r76",
      "r160",
      "r163",
      "r164",
      "r267",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r613",
      "r616",
      "r617",
      "r717",
      "r966",
      "r1089",
      "r1106",
      "r1214",
      "r1342",
      "r1486",
      "r1583",
      "r1584"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities and shareholders\u2019 equity",
        "label": "Liabilities and Equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r831",
      "r832",
      "r845",
      "r888",
      "r1180",
      "r1197",
      "r1198",
      "r1404",
      "r1408",
      "r1446",
      "r1569"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "LIABILITIES AND SHAREHOLDERS\u2019 EQUITY"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current liabilities",
        "label": "Liabilities, Current",
        "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": [
      "r75",
      "r76",
      "r79",
      "r99",
      "r160",
      "r163",
      "r164",
      "r267",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r613",
      "r616",
      "r617",
      "r717",
      "r1180",
      "r1486",
      "r1583",
      "r1584"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total long-term liabilities",
        "label": "Liabilities, Noncurrent",
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r76",
      "r160",
      "r163",
      "r164",
      "r267",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r613",
      "r616",
      "r617",
      "r717",
      "r1342",
      "r1486",
      "r1583",
      "r1584"
     ]
    },
    "us-gaap_LiabilitiesNoncurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LiabilitiesNoncurrentAbstract",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LineOfCredit",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revolving lines of credit",
        "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement."
       }
      }
     },
     "auth_ref": [
      "r1325",
      "r1333",
      "r1586",
      "r1587",
      "r1588",
      "r1592"
     ]
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LineOfCreditFacilityLineItems",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility [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": [
      "r87",
      "r96",
      "r347",
      "r831",
      "r832",
      "r836",
      "r1404",
      "r1406",
      "r1485"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of credit facility, maximum borrowing capacity",
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility."
       }
      }
     },
     "auth_ref": [
      "r1324",
      "r1326"
     ]
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LineOfCreditFacilityTable",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility [Table]",
        "documentation": "Disclosure of information about short-term and long-term contractual arrangements with lender under which borrowing can occur up to maximum amount. Includes, but is not limited to, letter of credit, standby letter of credit, and revolving credit arrangement."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r96",
      "r347",
      "r831",
      "r832",
      "r836",
      "r1404",
      "r1406",
      "r1485"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebt",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total",
        "label": "Long-Term Debt",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r161",
      "r169",
      "r370",
      "r385",
      "r831",
      "r832",
      "r840",
      "r855",
      "r1102",
      "r1103",
      "r1178",
      "r1325",
      "r1333",
      "r1592"
     ]
    },
    "us-gaap_LongTermDebtAverageAmountOutstanding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtAverageAmountOutstanding",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt outstanding amount",
        "documentation": "Average amount outstanding of long-term debt."
       }
      }
     },
     "auth_ref": [
      "r62",
      "r63",
      "r996"
     ]
    },
    "us-gaap_LongTermDebtCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtCurrent",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Less: Current portion of long-term debt and other current borrowings",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r1069",
      "r1070"
     ]
    },
    "us-gaap_LongTermDebtFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtFairValue",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value",
        "documentation": "The fair value amount of long-term debt whether such amount is presented as a separate caption or as a parenthetical disclosure. Additionally, this element may be used in connection with the fair value disclosures required in the footnote disclosures to the financial statements. The element may be used in both the balance sheet and disclosure in the same submission."
       }
      }
     },
     "auth_ref": [
      "r1176",
      "r1177",
      "r1551",
      "r1552",
      "r1553",
      "r1554",
      "r1565",
      "r1566",
      "r1567",
      "r1568"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "Long-Term Debt, Maturity, Year One",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r161",
      "r169",
      "r375",
      "r855"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2030",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in 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": [
      "r6",
      "r161",
      "r169",
      "r375",
      "r855"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2029",
        "label": "Long-Term Debt, Maturity, Year Four",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r161",
      "r169",
      "r375",
      "r855"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2028",
        "label": "Long-Term Debt, Maturity, Year Three",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r161",
      "r169",
      "r375",
      "r855"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails": {
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfMaturitiesOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "Long-Term Debt, Maturity, Year Two",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r161",
      "r169",
      "r375",
      "r855"
     ]
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermDebtNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfFairValueAndCarryingAmountsOfLongTermDebtDetails",
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term debt",
        "verboseLabel": "Carrying Value",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r1325",
      "r1333"
     ]
    },
    "us-gaap_LongTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermInvestments",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity method investment",
        "documentation": "The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle)."
       }
      }
     },
     "auth_ref": [
      "r84",
      "r90"
     ]
    },
    "us-gaap_LongTermPurchaseCommitmentAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LongTermPurchaseCommitmentAmount",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchase of aggregate raw material",
        "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LossContingenciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LossContingenciesLineItems",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss Contingencies [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": [
      "r200",
      "r325",
      "r339",
      "r340",
      "r341",
      "r344",
      "r516",
      "r930",
      "r1100",
      "r1474",
      "r1475"
     ]
    },
    "us-gaap_LossContingenciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "LossContingenciesTable",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss Contingencies [Table]",
        "documentation": "Disclosure of information about loss contingency. Excludes environmental contingency, warranty, and unconditional purchase obligation."
       }
      }
     },
     "auth_ref": [
      "r200",
      "r325",
      "r339",
      "r340",
      "r341",
      "r344",
      "r516",
      "r930",
      "r1100",
      "r1474",
      "r1475"
     ]
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "MaximumMember",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative",
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r77",
      "r78",
      "r200",
      "r340",
      "r341",
      "r342",
      "r343",
      "r486",
      "r510",
      "r511",
      "r512",
      "r516",
      "r703",
      "r760",
      "r761",
      "r762",
      "r763",
      "r765",
      "r766",
      "r767",
      "r768",
      "r792",
      "r918",
      "r919",
      "r930",
      "r957",
      "r958",
      "r1020",
      "r1022",
      "r1024",
      "r1025",
      "r1034",
      "r1039",
      "r1040",
      "r1042",
      "r1043",
      "r1055",
      "r1056",
      "r1096",
      "r1117",
      "r1119",
      "r1125",
      "r1128",
      "r1169",
      "r1170",
      "r1174",
      "r1175",
      "r1192",
      "r1488",
      "r1489"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure [Axis]"
       }
      }
     },
     "auth_ref": [
      "r1268"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Name"
       }
      }
     },
     "auth_ref": [
      "r1268"
     ]
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "MinimumMember",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative",
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]"
       }
      }
     },
     "auth_ref": [
      "r77",
      "r78",
      "r200",
      "r340",
      "r341",
      "r342",
      "r343",
      "r486",
      "r510",
      "r511",
      "r512",
      "r516",
      "r703",
      "r760",
      "r761",
      "r762",
      "r763",
      "r765",
      "r766",
      "r767",
      "r768",
      "r792",
      "r918",
      "r919",
      "r930",
      "r957",
      "r958",
      "r1020",
      "r1022",
      "r1024",
      "r1025",
      "r1034",
      "r1039",
      "r1040",
      "r1042",
      "r1043",
      "r1055",
      "r1056",
      "r1096",
      "r1117",
      "r1119",
      "r1125",
      "r1128",
      "r1169",
      "r1170",
      "r1174",
      "r1192",
      "r1488",
      "r1489"
     ]
    },
    "us-gaap_MinorityInterestOwnershipPercentageByParent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "MinorityInterestOwnershipPercentageByParent",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minority interest ownership",
        "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/2026",
     "localname": "MnpiDiscTimedForCompValFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "MNPI Disclosure Timed for Compensation Value"
       }
      }
     },
     "auth_ref": [
      "r1287"
     ]
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "MtrlTermsOfTrdArrTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Terms of Trading Arrangement"
       }
      }
     },
     "auth_ref": [
      "r1295"
     ]
    },
    "ecd_NamedExecutiveOfficersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "NamedExecutiveOfficersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Named Executive Officers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r1269"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "CASH PROVIDED BY (USED IN) FINANCING ACTIVITIES",
        "label": "Cash Provided by (Used in) Financing Activity, Including Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from financing activity, including, but not limited to, discontinued operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CASH FLOWS FROM FINANCING ACTIVITIES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "CASH USED IN INVESTING ACTIVITIES",
        "label": "Cash Provided by (Used in) Investing Activity, Including Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from investing activity, including, but not limited to, discontinued operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, property, plant, and equipment, and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r150"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CASH FLOWS FROM INVESTING ACTIVITIES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "CASH PROVIDED BY OPERATING ACTIVITIES",
        "label": "Cash Provided by (Used in) Operating Activity, Including Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from operating activity, including, but not limited to, discontinued operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r42",
      "r43"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CASH FLOWS FROM OPERATING ACTIVITIES"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_NetContractLiabilitiesAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "NetContractLiabilitiesAssets",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net contract liability",
        "documentation": "Net contract liabilities assets.",
        "label": "NetContractLiabilitiesAssets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      },
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://tecnoglass.com/role/StatementsOfCashFlows",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income",
        "label": "Net income",
        "verboseLabel": "Net Income (Loss)",
        "terseLabel": "Net Income attributable to parent",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r43",
      "r51",
      "r65",
      "r75",
      "r76",
      "r130",
      "r133",
      "r137",
      "r160",
      "r163",
      "r164",
      "r167",
      "r173",
      "r177",
      "r178",
      "r180",
      "r181",
      "r182",
      "r186",
      "r187",
      "r192",
      "r267",
      "r321",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r388",
      "r391",
      "r393",
      "r397",
      "r425",
      "r461",
      "r515",
      "r544",
      "r610",
      "r700",
      "r717",
      "r894",
      "r988",
      "r1010",
      "r1011",
      "r1079",
      "r1082",
      "r1085",
      "r1212",
      "r1486"
     ]
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Recently Issued Accounting Pronouncements",
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact."
       }
      }
     },
     "auth_ref": [
      "r188"
     ]
    },
    "dei_NoTradingSymbolFlag": {
     "xbrltype": "trueItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "NoTradingSymbolFlag",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Trading Symbol Flag",
        "documentation": "Boolean flag that is true only for a security having no trading symbol."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonGaapMeasureDescriptionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "NonGaapMeasureDescriptionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-GAAP Measure Description"
       }
      }
     },
     "auth_ref": [
      "r1268"
     ]
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "NonPeoNeoAvgCompActuallyPaidAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Compensation Actually Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r1265"
     ]
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "NonPeoNeoAvgTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r1264"
     ]
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "NonRule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r1295"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "NonRule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r1295"
     ]
    },
    "TGLS_NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-cash additions to ROU assets in exchange for lease liabilities",
        "documentation": "Non cash additions to right of use assets in exchange for lease liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "NON-CASH INVESTING AND FINANCING ACTIVITIES:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NonoperatingGainsLosses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NonoperatingGainsLosses",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-operating income, net",
        "documentation": "The aggregate amount of gains or losses resulting from nonoperating activities (for example, interest and dividend revenue, property, plant and equipment impairment loss, and so forth)."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r36"
     ]
    },
    "us-gaap_NonrelatedPartyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NonrelatedPartyMember",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonrelated Party [Member]",
        "documentation": "Party not related to reporting entity."
       }
      }
     },
     "auth_ref": [
      "r1404",
      "r1411",
      "r1412"
     ]
    },
    "TGLS_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notice of Acceptances Product Designs and Intellectual Property [Member]",
        "documentation": "Notice of Acceptances Product Designs and Intellectual Property [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NumberOfReportableSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "NumberOfReportableSegments",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Number of reportable segment",
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements."
       }
      }
     },
     "auth_ref": [
      "r1091",
      "r1095",
      "r1426"
     ]
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTotalLabel": "Total operating expenses",
        "label": "Operating Expenses",
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense."
       }
      }
     },
     "auth_ref": [
      "r1085",
      "r1319",
      "r1320",
      "r1446"
     ]
    },
    "us-gaap_OperatingExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OperatingExpensesAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating income",
        "label": "Operating Income (Loss)",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r1079",
      "r1085",
      "r1090",
      "r1319",
      "r1320",
      "r1424",
      "r1427",
      "r1433",
      "r1436",
      "r1437",
      "r1446"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/General"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "General",
        "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r66",
      "r68",
      "r70",
      "r933",
      "r934"
     ]
    },
    "us-gaap_OtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other current assets",
        "documentation": "Amount of current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r124",
      "r1180"
     ]
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other long-term assets",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r86",
      "r93"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency translation",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r8",
      "r48"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in fair value of investments available for sale and derivative contracts",
        "verboseLabel": "Derivative financial instruments",
        "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness."
       }
      }
     },
     "auth_ref": [
      "r128",
      "r129",
      "r895"
     ]
    },
    "TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in fair value of investments available for sale",
        "documentation": "Change in fair value of investments available for sale."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Change in fair value of investments available for sale and derivative contracts",
        "documentation": "Other comprehensive income loss change in fair value of investments available for sale and derivative contracts.",
        "label": "OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency translation adjustments",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r895"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Other comprehensive income",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent",
        "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r8",
      "r48",
      "r131",
      "r134",
      "r182"
     ]
    },
    "TGLS_OtherCurrentAssetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "OtherCurrentAssetMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Current Asset [Member]",
        "documentation": "Other Current Asset [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherInventoriesSpareParts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherInventoriesSpareParts",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails": {
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Spares and accessories",
        "documentation": "Gross amount of components of assembled products that can be sold directly or indirectly through sales of assembled products."
       }
      }
     },
     "auth_ref": [
      "r1323",
      "r1339"
     ]
    },
    "us-gaap_OtherLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other current liabilities",
        "verboseLabel": "Due to related parties",
        "terseLabel": "Total due to related parties",
        "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r95",
      "r98",
      "r1180"
     ]
    },
    "us-gaap_OtherLongTermDebtCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherLongTermDebtCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other current debt",
        "documentation": "Amount of long-term debt classified as other, payable within one year or the operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r965",
      "r1328"
     ]
    },
    "TGLS_OtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "OtherMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other [Member]",
        "documentation": "Other [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherNoncashIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other non-cash adjustments",
        "label": "Other Noncash Income (Expense)",
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other."
       }
      }
     },
     "auth_ref": [
      "r43"
     ]
    },
    "TGLS_OtherOperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "OtherOperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Operating income",
        "documentation": "Other operating income loss."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "OtherPerfMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Performance Measure, Amount"
       }
      }
     },
     "auth_ref": [
      "r1268"
     ]
    },
    "us-gaap_OtherReceivablesNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "OtherReceivablesNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Due from related parties",
        "verboseLabel": "Total due from related parties",
        "documentation": "Amount, after allowance, of receivables classified as other, due within one year or the operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1066"
     ]
    },
    "dei_OtherReportingStandardItemNumber": {
     "xbrltype": "otherReportingStandardItemNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "OtherReportingStandardItemNumber",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Reporting Standard Item Number",
        "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS."
       }
      }
     },
     "auth_ref": [
      "r1228"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "OutstandingAggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r1235",
      "r1246",
      "r1256",
      "r1282"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r1238",
      "r1249",
      "r1259",
      "r1285"
     ]
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Name",
        "label": "Outstanding Recovery, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r1238",
      "r1249",
      "r1259",
      "r1285"
     ]
    },
    "srt_OwnershipAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "OwnershipAxis",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ownership [Axis]"
       }
      }
     },
     "auth_ref": [
      "r424",
      "r426"
     ]
    },
    "srt_OwnershipDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "OwnershipDomain",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "auth_ref": [
      "r424",
      "r426"
     ]
    },
    "country_PA": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2026",
     "localname": "PA",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PANAMA"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_PayVsPerformanceDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "auth_ref": [
      "r1263"
     ]
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PayablesAndAccrualsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsForRepurchaseOfEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsForRepurchaseOfEquity",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Share repurchases",
        "label": "Payments for Repurchase of Equity",
        "documentation": "The cash outflow to reacquire common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r937"
     ]
    },
    "us-gaap_PaymentsOfDebtIssuanceCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsOfDebtIssuanceCosts",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost and fees",
        "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "us-gaap_PaymentsOfDividends": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsOfDividends",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Cash dividend",
        "label": "Payments of Dividends",
        "documentation": "Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests."
       }
      }
     },
     "auth_ref": [
      "r40"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsToAcquireBusinessesGross",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payment of cash",
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r592",
      "r1119",
      "r1124",
      "r1156"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Business acquisition",
        "label": "Payments to Acquire Businesses, 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": [
      "r11"
     ]
    },
    "us-gaap_PaymentsToAcquireInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsToAcquireInvestments",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchase of investments",
        "label": "Payments to Acquire Investments",
        "documentation": "The cash outflow associated with the purchase of all investments (debt, security, other) during the period."
       }
      }
     },
     "auth_ref": [
      "r38"
     ]
    },
    "us-gaap_PaymentsToAcquireProductiveAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsToAcquireProductiveAssets",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchase from related party",
        "documentation": "The cash outflow for purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other intangible assets."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r1522",
      "r1523",
      "r1524"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Acquisition of property and equipment",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "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": [
      "r39"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PeerGroupIssuersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Issuers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r1267"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PeerGroupTotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r1267"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PeoActuallyPaidCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Actually Paid Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r1265"
     ]
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r1269"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PeoTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r1264"
     ]
    },
    "ecd_PnsnBnftsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PnsnBnftsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Benefits Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r1265"
     ]
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Issuer Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r1222"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "PreCommencementTenderOffer",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r1224"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred shares, par value",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r401",
      "r1322",
      "r1334",
      "r1492",
      "r1586",
      "r1587",
      "r1589"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred shares, shares 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": [
      "r80",
      "r111",
      "r420",
      "r831",
      "r832",
      "r842",
      "r967"
     ]
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred shares, shares issued",
        "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r111",
      "r401",
      "r420",
      "r831",
      "r832",
      "r842"
     ]
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PreferredStockSharesOutstanding",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred shares, shares 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": [
      "r80",
      "r111",
      "r420",
      "r831",
      "r832",
      "r842",
      "r967",
      "r986",
      "r1490",
      "r1643",
      "r1644"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred shares, $0.0001 par value, 1,000,000 shares authorized, 0 shares issued and outstanding at June 30, 2026, and December 31, 2025 respectively",
        "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": [
      "r80",
      "r111",
      "r390",
      "r395",
      "r420",
      "r831",
      "r832",
      "r842",
      "r884",
      "r1180"
     ]
    },
    "TGLS_PremiumClosingStockPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "PremiumClosingStockPercentage",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Premium closing stock, percent",
        "documentation": "Premium closing stock, percent."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_PrismaGlassLLCMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "PrismaGlassLLCMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prisma Glass LLC [Member]",
        "documentation": "Prisma Glass LLC [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends received",
        "documentation": "Amount of distribution received from equity method investee for return of investment, classified as investing activities. Excludes distribution for return on investment, classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r1398"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ProceedsFromIssuanceOfDebt",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from debt",
        "documentation": "The cash inflow during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt."
       }
      }
     },
     "auth_ref": [
      "r1399"
     ]
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sale of property and equipment",
        "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": [
      "r37"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails",
      "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "auth_ref": [
      "r226",
      "r794",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r1059",
      "r1077",
      "r1082",
      "r1085",
      "r1107",
      "r1108",
      "r1191",
      "r1192",
      "r1193",
      "r1196",
      "r1200",
      "r1355",
      "r1356",
      "r1357",
      "r1358",
      "r1359",
      "r1360",
      "r1361",
      "r1362",
      "r1363",
      "r1364",
      "r1365",
      "r1366",
      "r1367",
      "r1368",
      "r1369",
      "r1370",
      "r1371",
      "r1372",
      "r1373",
      "r1374",
      "r1375",
      "r1376",
      "r1377",
      "r1378",
      "r1379",
      "r1380",
      "r1381",
      "r1382",
      "r1383",
      "r1384",
      "r1385",
      "r1386",
      "r1387",
      "r1388",
      "r1389",
      "r1390",
      "r1391",
      "r1392",
      "r1394",
      "r1395",
      "r1396",
      "r1397",
      "r1476",
      "r1477",
      "r1595",
      "r1596",
      "r1597",
      "r1598",
      "r1599",
      "r1600",
      "r1601",
      "r1602",
      "r1603",
      "r1604",
      "r1605",
      "r1606",
      "r1607",
      "r1608",
      "r1609",
      "r1610",
      "r1611",
      "r1612",
      "r1613",
      "r1614",
      "r1615",
      "r1616",
      "r1617",
      "r1618",
      "r1619",
      "r1620",
      "r1621",
      "r1622",
      "r1623",
      "r1624",
      "r1625",
      "r1626",
      "r1627",
      "r1628",
      "r1629",
      "r1630",
      "r1631",
      "r1632",
      "r1633",
      "r1634"
     ]
    },
    "TGLS_ProductSalesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ProductSalesMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Sales [Member]",
        "documentation": "Product Sales [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails",
      "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails"
     ],
     "auth_ref": [
      "r226",
      "r794",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r1059",
      "r1077",
      "r1082",
      "r1085",
      "r1107",
      "r1108",
      "r1191",
      "r1192",
      "r1193",
      "r1196",
      "r1200",
      "r1355",
      "r1356",
      "r1357",
      "r1358",
      "r1359",
      "r1360",
      "r1361",
      "r1362",
      "r1363",
      "r1364",
      "r1365",
      "r1366",
      "r1367",
      "r1368",
      "r1369",
      "r1370",
      "r1371",
      "r1372",
      "r1373",
      "r1374",
      "r1375",
      "r1376",
      "r1377",
      "r1378",
      "r1379",
      "r1380",
      "r1381",
      "r1382",
      "r1383",
      "r1384",
      "r1385",
      "r1386",
      "r1387",
      "r1388",
      "r1389",
      "r1390",
      "r1391",
      "r1392",
      "r1394",
      "r1395",
      "r1396",
      "r1397",
      "r1476",
      "r1477",
      "r1595",
      "r1596",
      "r1597",
      "r1598",
      "r1599",
      "r1600",
      "r1601",
      "r1602",
      "r1603",
      "r1604",
      "r1605",
      "r1606",
      "r1607",
      "r1608",
      "r1609",
      "r1610",
      "r1611",
      "r1612",
      "r1613",
      "r1614",
      "r1615",
      "r1616",
      "r1617",
      "r1618",
      "r1619",
      "r1620",
      "r1621",
      "r1622",
      "r1623",
      "r1624",
      "r1625",
      "r1626",
      "r1627",
      "r1628",
      "r1629",
      "r1630",
      "r1631",
      "r1632",
      "r1633",
      "r1634"
     ]
    },
    "us-gaap_ProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ProfitLoss",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Net income",
        "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest",
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r75",
      "r76",
      "r130",
      "r133",
      "r152",
      "r160",
      "r163",
      "r164",
      "r167",
      "r173",
      "r182",
      "r186",
      "r187",
      "r267",
      "r321",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r388",
      "r425",
      "r461",
      "r515",
      "r544",
      "r610",
      "r611",
      "r614",
      "r615",
      "r700",
      "r717",
      "r851",
      "r853",
      "r893",
      "r944",
      "r988",
      "r1010",
      "r1011",
      "r1062",
      "r1158",
      "r1159",
      "r1213",
      "r1354",
      "r1486"
     ]
    },
    "us-gaap_ProgramRightsObligationsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ProgramRightsObligationsCurrent",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities",
        "documentation": "Amount of obligations related to rights to programming, including, but not limited to, feature films and episodic series, acquired under license agreements that will be paid within the next twelve months."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Advances from customers on uncompleted contracts",
        "documentation": "Amount of advances received from customers under long-term contracts which have been offset against inventories accounts at the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r122"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, plant and equipment, net",
        "documentation": "Amount, after accumulated depreciation, depletion, and amortization, of property, plant, and equipment. Includes, but is not limited to, land and land improvement; building; machinery and equipment; furniture and fixture; and work of art, historical treasure, or similar asset classified as collection."
       }
      }
     },
     "auth_ref": [
      "r742",
      "r831",
      "r832",
      "r848",
      "r874",
      "r875",
      "r890",
      "r1180",
      "r1466"
     ]
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ProvisionForDoubtfulAccounts",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableDetails",
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance for credit losses",
        "verboseLabel": "Provisions for credit losses",
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r141",
      "r143",
      "r275"
     ]
    },
    "TGLS_PurchasePriceOfFuel": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "PurchasePriceOfFuel",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchases of fuel",
        "documentation": "Purchase price of fuel."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PvpTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Table]"
       }
      }
     },
     "auth_ref": [
      "r1263"
     ]
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "PvpTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure, Table"
       }
      }
     },
     "auth_ref": [
      "r1263"
     ]
    },
    "TGLS_QuarterlyRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "QuarterlyRateMember",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Quarterly Rate [Member]",
        "documentation": "Quarterly Rate [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "RangeAxis",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative",
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r77",
      "r78",
      "r200",
      "r340",
      "r341",
      "r342",
      "r343",
      "r464",
      "r486",
      "r510",
      "r511",
      "r512",
      "r514",
      "r516",
      "r703",
      "r760",
      "r761",
      "r762",
      "r763",
      "r765",
      "r766",
      "r767",
      "r768",
      "r775",
      "r792",
      "r918",
      "r919",
      "r930",
      "r957",
      "r958",
      "r1020",
      "r1022",
      "r1024",
      "r1025",
      "r1034",
      "r1039",
      "r1040",
      "r1042",
      "r1043",
      "r1055",
      "r1056",
      "r1096",
      "r1117",
      "r1119",
      "r1125",
      "r1128",
      "r1169",
      "r1170",
      "r1174",
      "r1175",
      "r1192",
      "r1204",
      "r1471",
      "r1488",
      "r1489",
      "r1553"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "RangeMember",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative",
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "auth_ref": [
      "r77",
      "r78",
      "r200",
      "r340",
      "r341",
      "r342",
      "r343",
      "r464",
      "r486",
      "r510",
      "r511",
      "r512",
      "r514",
      "r516",
      "r703",
      "r760",
      "r761",
      "r762",
      "r763",
      "r765",
      "r766",
      "r767",
      "r768",
      "r775",
      "r792",
      "r918",
      "r919",
      "r930",
      "r957",
      "r958",
      "r1020",
      "r1022",
      "r1024",
      "r1025",
      "r1034",
      "r1039",
      "r1040",
      "r1042",
      "r1043",
      "r1055",
      "r1056",
      "r1096",
      "r1117",
      "r1119",
      "r1125",
      "r1128",
      "r1169",
      "r1170",
      "r1174",
      "r1175",
      "r1192",
      "r1204",
      "r1471",
      "r1488",
      "r1489",
      "r1553"
     ]
    },
    "TGLS_RealizedGainOnDerivativeInstruments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "RealizedGainOnDerivativeInstruments",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Realized gain on derivative instruments",
        "documentation": "Realized gain on derivative instruments."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "auth_ref": [
      "r1230",
      "r1241",
      "r1251",
      "r1277"
     ]
    },
    "TGLS_RecoveryOfPreviouslyPaidImportTariffs": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "RecoveryOfPreviouslyPaidImportTariffs",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of previously paid import tariffs",
        "documentation": "Recovery of previously paid import tariffs."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Previously Paid Import Tariffs",
        "documentation": "Recovery Of Previously Paid Import Tariffs [Policy Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RelatedPartyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyDomain",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome",
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r88",
      "r95",
      "r105",
      "r107",
      "r160",
      "r166",
      "r167",
      "r230",
      "r465",
      "r482",
      "r748",
      "r749",
      "r831",
      "r832",
      "r838",
      "r839",
      "r840",
      "r846",
      "r883",
      "r889",
      "r960",
      "r961",
      "r962",
      "r963",
      "r964",
      "r985",
      "r1019",
      "r1066",
      "r1638",
      "r1645"
     ]
    },
    "us-gaap_RelatedPartyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyMember",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome",
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party [Member]",
        "documentation": "Party related to reporting entity. Includes, but is not limited to, affiliate, entity for which investment is accounted for by equity method, trust for benefit of employees, and principal owner, management, and members of immediate family."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r88",
      "r95",
      "r105",
      "r107",
      "r160",
      "r166",
      "r167",
      "r748",
      "r749",
      "r750",
      "r751",
      "r831",
      "r832",
      "r840",
      "r883",
      "r889",
      "r960",
      "r961",
      "r962",
      "r963",
      "r964",
      "r985",
      "r1019"
     ]
    },
    "us-gaap_RelatedPartyTransactionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyTransactionAxis",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transaction [Axis]",
        "documentation": "Information by type of related party transaction."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r166",
      "r167",
      "r748",
      "r749",
      "r1582"
     ]
    },
    "us-gaap_RelatedPartyTransactionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyTransactionDomain",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Transaction between related party."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r166",
      "r167",
      "r1582"
     ]
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyTransactionLineItems",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "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": [
      "r160",
      "r166",
      "r167",
      "r230",
      "r748",
      "r749",
      "r751",
      "r831",
      "r832",
      "r838",
      "r839",
      "r840",
      "r846",
      "r991",
      "r992",
      "r995",
      "r1645"
     ]
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyTransactionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome",
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related and Nonrelated Parties [Axis]",
        "documentation": "Information by related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r88",
      "r95",
      "r105",
      "r107",
      "r160",
      "r166",
      "r167",
      "r230",
      "r465",
      "r482",
      "r748",
      "r749",
      "r831",
      "r832",
      "r838",
      "r839",
      "r840",
      "r846",
      "r883",
      "r889",
      "r960",
      "r961",
      "r962",
      "r963",
      "r964",
      "r985",
      "r1019",
      "r1066",
      "r1582",
      "r1638",
      "r1645"
     ]
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RelatedParties"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Parties",
        "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": [
      "r745",
      "r746",
      "r747",
      "r749",
      "r752",
      "r831",
      "r832",
      "r847",
      "r940",
      "r941",
      "r942",
      "r993",
      "r994",
      "r995",
      "r1016",
      "r1018"
     ]
    },
    "us-gaap_RepaymentsOfDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RepaymentsOfDebt",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repayments of debt",
        "label": "Repayment of debt",
        "documentation": "Amount of cash outflow for short-term and long-term debt. Excludes payment of lease obligation."
       }
      }
     },
     "auth_ref": [
      "r1400"
     ]
    },
    "us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ReportableSegmentAggregationBeforeOtherOperatingSegmentMember",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reportable Segment, Aggregation before Other Operating Segment [Member]",
        "documentation": "Aggregation of reportable segments before other operating segment. Excludes intersegment elimination and reconciling item."
       }
      }
     },
     "auth_ref": [
      "r1093",
      "r1094"
     ]
    },
    "TGLS_ResidentialMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ResidentialMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Residential [Member]",
        "documentation": "Residential [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RestatementAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "RestatementAxis",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period [Axis]"
       }
      }
     },
     "auth_ref": [
      "r64",
      "r65",
      "r67",
      "r74",
      "r145",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r177",
      "r178",
      "r179",
      "r180",
      "r183",
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r196",
      "r269",
      "r270",
      "r321",
      "r387",
      "r388",
      "r424",
      "r426",
      "r460",
      "r461",
      "r515",
      "r542",
      "r543",
      "r544",
      "r545",
      "r609",
      "r610",
      "r694",
      "r697",
      "r698",
      "r699",
      "r700",
      "r743",
      "r744",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r935",
      "r1438"
     ]
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "RestatementDateAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date [Axis]"
       }
      }
     },
     "auth_ref": [
      "r1231",
      "r1242",
      "r1252",
      "r1278"
     ]
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r1232",
      "r1243",
      "r1253",
      "r1279"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "RestatementDoesNotRequireRecoveryTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement does not require Recovery"
       }
      }
     },
     "auth_ref": [
      "r1239",
      "r1250",
      "r1260",
      "r1286"
     ]
    },
    "srt_RestatementDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "RestatementDomain",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "auth_ref": [
      "r64",
      "r65",
      "r67",
      "r74",
      "r145",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r177",
      "r178",
      "r179",
      "r180",
      "r183",
      "r184",
      "r185",
      "r186",
      "r187",
      "r188",
      "r196",
      "r269",
      "r270",
      "r321",
      "r387",
      "r388",
      "r424",
      "r426",
      "r460",
      "r461",
      "r515",
      "r542",
      "r543",
      "r544",
      "r545",
      "r609",
      "r610",
      "r694",
      "r697",
      "r698",
      "r699",
      "r700",
      "r743",
      "r744",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r935",
      "r1438"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained earnings",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r116",
      "r118",
      "r422",
      "r831",
      "r832",
      "r844",
      "r887",
      "r924",
      "r929",
      "r938",
      "r968",
      "r1180"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r65",
      "r170",
      "r171",
      "r172",
      "r174",
      "r182",
      "r185",
      "r187",
      "r268",
      "r271",
      "r320",
      "r321",
      "r322",
      "r387",
      "r419",
      "r429",
      "r459",
      "r460",
      "r462",
      "r463",
      "r515",
      "r532",
      "r533",
      "r541",
      "r542",
      "r543",
      "r545",
      "r609",
      "r610",
      "r679",
      "r680",
      "r681",
      "r684",
      "r686",
      "r687",
      "r689",
      "r698",
      "r732",
      "r791",
      "r876",
      "r920",
      "r922",
      "r945",
      "r1494",
      "r1495",
      "r1643"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating revenues:",
        "verboseLabel": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfDisaggregationByRevenueDetails",
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails",
      "http://tecnoglass.com/role/ScheduleOfRevenuesDistributionByEndMarketDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total operating revenues",
        "verboseLabel": "Total Revenues",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r197",
      "r203",
      "r204",
      "r218",
      "r223",
      "r226",
      "r227",
      "r229",
      "r453",
      "r454",
      "r455",
      "r794",
      "r1079",
      "r1085"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities",
        "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": [
      "r61",
      "r444",
      "r446",
      "r447",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r455",
      "r458"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RevenueRemainingPerformanceObligation",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Remaining performance obligation",
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue."
       }
      }
     },
     "auth_ref": [
      "r58"
     ]
    },
    "us-gaap_RevenueRemainingPerformanceObligationPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "RevenueRemainingPerformanceObligationPercentage",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Performance obligation, percentage",
        "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue."
       }
      }
     },
     "auth_ref": [
      "r1310"
     ]
    },
    "us-gaap_Revenues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "Revenues",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales to related parties",
        "verboseLabel": "Revenue from related parties",
        "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": [
      "r138",
      "r160",
      "r163",
      "r164",
      "r197",
      "r203",
      "r204",
      "r218",
      "r223",
      "r226",
      "r227",
      "r229",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r425",
      "r717",
      "r851",
      "r853",
      "r1093",
      "r1160",
      "r1197",
      "r1198",
      "r1319",
      "r1320",
      "r1446",
      "r1486"
     ]
    },
    "TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesAbstract",
     "auth_ref": []
    },
    "TGLS_RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTable [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RevisionOfPriorPeriodReclassificationAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "RevisionOfPriorPeriodReclassificationAdjustmentMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period, Reclassification, Adjustment [Member]"
       }
      }
     },
     "auth_ref": [
      "r67",
      "r74",
      "r145",
      "r694",
      "r1438"
     ]
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "Rule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r1295"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "Rule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r1295"
     ]
    },
    "TGLS_SalesToOtherRelatedPartiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "SalesToOtherRelatedPartiesMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales to Other Related Parties [Member]",
        "documentation": "Sales to Other Related Parties [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_SantaMariaDelMarSASMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "SantaMariaDelMarSASMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Santa Maria Del Mar SAS [Member]",
        "documentation": "Santa Maria Del Mar SAS [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ScenarioForecastMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "ScenarioForecastMember",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forecast [Member]"
       }
      }
     },
     "auth_ref": [
      "r487"
     ]
    },
    "srt_ScenarioPreviouslyReportedMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "ScenarioPreviouslyReportedMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Previously Reported [Member]"
       }
      }
     },
     "auth_ref": [
      "r64",
      "r65",
      "r170",
      "r172",
      "r173",
      "r174",
      "r177",
      "r178",
      "r187",
      "r196",
      "r321",
      "r387",
      "r388",
      "r424",
      "r426",
      "r460",
      "r461",
      "r515",
      "r542",
      "r544",
      "r545",
      "r609",
      "r610",
      "r697",
      "r698",
      "r699",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r935",
      "r1417",
      "r1418",
      "r1420",
      "r1421",
      "r1422",
      "r1438",
      "r1447",
      "r1448",
      "r1549",
      "r1577",
      "r1578"
     ]
    },
    "srt_ScenarioUnspecifiedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "ScenarioUnspecifiedDomain",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative"
     ],
     "auth_ref": [
      "r69",
      "r71",
      "r188",
      "r487",
      "r1305"
     ]
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Trade 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": [
      "r1440",
      "r1441"
     ]
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination [Table]",
        "documentation": "Disclosure of information about business combination. Includes, but is not limited to, recognized asset and liability."
       }
      }
     },
     "auth_ref": [
      "r302",
      "r547",
      "r548",
      "r549",
      "r550",
      "r556",
      "r557",
      "r558",
      "r559",
      "r565",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595",
      "r601",
      "r602",
      "r603",
      "r607",
      "r1119",
      "r1128",
      "r1511",
      "r1515",
      "r1517"
     ]
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Purchase Price Allocation Consideration Transferred",
        "documentation": "Tabular disclosure of business combination. Includes, but is not limited to, recognized asset and liability."
       }
      }
     },
     "auth_ref": [
      "r1119",
      "r1124",
      "r1510",
      "r1512",
      "r1514",
      "r1518",
      "r1519",
      "r1520"
     ]
    },
    "TGLS_ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Changes in Allowance for Doubtful Accounts Receivable",
        "documentation": "Schedule of changes in allowance for doubtful accounts receivable [Table Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/IncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Components of Income Tax Expense",
        "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": [
      "r1505"
     ]
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfDebtInstrumentsTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Fair Value and Carrying Amounts of Long Term Debt",
        "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r53",
      "r54",
      "r55",
      "r1102",
      "r1104",
      "r1325",
      "r1331",
      "r1332",
      "r1405",
      "r1413",
      "r1491",
      "r1574",
      "r1591"
     ]
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfDebtTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Long Term Debt",
        "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Benefit Plan [Table]",
        "documentation": "Disclosure of information about individual defined benefit pension plan or 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": [
      "r7",
      "r15",
      "r16",
      "r17",
      "r18",
      "r466",
      "r467",
      "r468",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485"
     ]
    },
    "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Gains (Losses) on Derivative Financial Instruments quarter ended",
        "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments."
       }
      }
     },
     "auth_ref": [
      "r630",
      "r633",
      "r638",
      "r646",
      "r657"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Earnings Per Share, Basic and Diluted",
        "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": [
      "r1423"
     ]
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "auth_ref": [
      "r264",
      "r265",
      "r266",
      "r540",
      "r717",
      "r1306",
      "r1307",
      "r1308",
      "r1506",
      "r1507",
      "r1508",
      "r1509"
     ]
    },
    "TGLS_ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Fair Value of Foreign Currency Hedges",
        "documentation": "Schedule Of Fair Value Of Foreign Currency Hedges [Table Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Asset, Finite-Lived [Table]",
        "documentation": "Disclosure of information about finite-lived intangible asset. Excludes goodwill."
       }
      }
     },
     "auth_ref": [
      "r304",
      "r311",
      "r314",
      "r315",
      "r317",
      "r795",
      "r1058",
      "r1061",
      "r1129",
      "r1130",
      "r1131",
      "r1132",
      "r1133",
      "r1134",
      "r1135",
      "r1136",
      "r1137",
      "r1138",
      "r1139",
      "r1140",
      "r1141",
      "r1142",
      "r1143",
      "r1144",
      "r1145",
      "r1146",
      "r1147",
      "r1148",
      "r1149",
      "r1150",
      "r1151",
      "r1152",
      "r1153",
      "r1154",
      "r1155",
      "r1464",
      "r1646",
      "r1647",
      "r1648"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Finite-Lived Intangible Assets, Net",
        "documentation": "Tabular disclosure of finite-lived intangible asset. Excludes goodwill."
       }
      }
     },
     "auth_ref": [
      "r1061",
      "r1457"
     ]
    },
    "TGLS_ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Interest Income Expenses net and deferred cost",
        "documentation": "Schedule of Interest Income Expense Net and Deferred Cost [Table Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/InventoriesNetTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Inventories",
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process."
       }
      }
     },
     "auth_ref": [
      "r1339"
     ]
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/DebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Maturities of Long Term Debt",
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Product Warranty Liability",
        "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r345"
     ]
    },
    "TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ScheduleOfPurchasePriceAllocationConsiderationTransferredAbstract",
     "auth_ref": []
    },
    "TGLS_ScheduleOfPurchasePriceAllocationConsiderationTransferredTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ScheduleOfPurchasePriceAllocationConsiderationTransferredTable",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ScheduleOfPurchasePriceAllocationConsiderationTransferredTable [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transaction [Table]",
        "documentation": "Disclosure of information about related party transaction."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r166",
      "r167",
      "r748",
      "r749",
      "r751",
      "r831",
      "r832",
      "r838",
      "r839",
      "r840",
      "r846",
      "r991",
      "r992",
      "r995",
      "r1645"
     ]
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfRelatedPartyTransactionsTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Related Parties",
        "documentation": "Tabular disclosure of related party transactions. Examples of related party transactions include, but are not limited to, 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": [
      "r1579",
      "r1580"
     ]
    },
    "TGLS_ScheduleOfRevenuesDistributionByEndMarketTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ScheduleOfRevenuesDistributionByEndMarketTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Revenues Distribution By End Market",
        "documentation": "Schedule Of Revenues Distribution By End Market [Table Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_ScheduleOfSaleToRelatedPartyTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ScheduleOfSaleToRelatedPartyTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Sale to Related Parties",
        "documentation": "Schedule Of Sale To Related Party [Table Text Block]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Geographic Information",
        "documentation": "Tabular disclosure of segment reporting. Includes, but is not limited to, reconciliation of reportable segment amount to corresponding consolidated total."
       }
      }
     },
     "auth_ref": [
      "r1425",
      "r1427",
      "r1428",
      "r1429",
      "r1430",
      "r1431",
      "r1432",
      "r1434",
      "r1435",
      "r1438"
     ]
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/IntangibleAssetsAndGoodwillTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Finite Lived Intangible Assets Future Amortization Expense",
        "documentation": "Tabular disclosure of estimated amortization expense for finite-lived intangible asset and capitalized cost for software to be sold, leased, or marketed, expected to be recognized for each of five succeeding fiscal years. Excludes goodwill."
       }
      }
     },
     "auth_ref": [
      "r1061",
      "r1460"
     ]
    },
    "us-gaap_SecuredOvernightFinancingRateSofrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SecuredOvernightFinancingRateSofrMember",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Secured Overnight Financing Rate (SOFR) [Member]",
        "documentation": "Interest rate at which bank can borrow U.S. dollar overnight while posting U.S. Treasury bond as collateral."
       }
      }
     },
     "auth_ref": [
      "r1325",
      "r1329",
      "r1546"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "Security12bTitle",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r1216"
     ]
    },
    "dei_Security12gTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "Security12gTitle",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(g) Security",
        "documentation": "Title of a 12(g) registered security."
       }
      }
     },
     "auth_ref": [
      "r1220"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r1219"
     ]
    },
    "dei_SecurityReportingObligation": {
     "xbrltype": "securityReportingObligationItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "SecurityReportingObligation",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Reporting Obligation",
        "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r1225"
     ]
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SegmentDomain",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r73",
      "r197",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r229",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r317",
      "r323",
      "r324",
      "r335",
      "r336",
      "r600",
      "r603",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r1092",
      "r1093",
      "r1094",
      "r1098",
      "r1195",
      "r1595",
      "r1596",
      "r1597",
      "r1598",
      "r1599",
      "r1600",
      "r1601",
      "r1602",
      "r1603",
      "r1604",
      "r1605",
      "r1606",
      "r1607",
      "r1608",
      "r1609",
      "r1610",
      "r1611",
      "r1612",
      "r1613",
      "r1614",
      "r1615",
      "r1616",
      "r1617",
      "r1618",
      "r1619",
      "r1620",
      "r1621",
      "r1633",
      "r1634"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails",
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails"
     ],
     "auth_ref": [
      "r199",
      "r227",
      "r228",
      "r797",
      "r798",
      "r799",
      "r800",
      "r801",
      "r802",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r808",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r816",
      "r817",
      "r818",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r851",
      "r852",
      "r853",
      "r854",
      "r950",
      "r953",
      "r955",
      "r1021",
      "r1023",
      "r1026",
      "r1035",
      "r1039",
      "r1041",
      "r1042",
      "r1043",
      "r1046",
      "r1047",
      "r1048",
      "r1049",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1054",
      "r1060",
      "r1088",
      "r1107",
      "r1109",
      "r1183",
      "r1184",
      "r1185",
      "r1186",
      "r1187",
      "r1188",
      "r1189",
      "r1190",
      "r1194",
      "r1204",
      "r1595",
      "r1596",
      "r1597",
      "r1599",
      "r1600",
      "r1601",
      "r1602",
      "r1603",
      "r1604",
      "r1605",
      "r1606",
      "r1607",
      "r1608",
      "r1609",
      "r1610",
      "r1611",
      "r1612",
      "r1613",
      "r1614",
      "r1615",
      "r1616",
      "r1617",
      "r1618",
      "r1619",
      "r1620",
      "r1621",
      "r1633",
      "r1634"
     ]
    },
    "us-gaap_SellingExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SellingExpense",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Selling expense",
        "label": "Selling Expense",
        "documentation": "Expenses recognized in the period that are directly related to the selling and distribution of products or services."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r146",
      "r1078",
      "r1081",
      "r1084"
     ]
    },
    "TGLS_SeniorSecuredCreditFacility": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "SeniorSecuredCreditFacility",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Senior Secured Credit Facility",
        "documentation": "Senior secured credit facility."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_SeniorSecuredCreditFacilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "SeniorSecuredCreditFacilityMember",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative",
      "http://tecnoglass.com/role/DerivativeFinancialInstrumentsAndFairValueMeasurementsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Senior Secured Credit Facility [Member]",
        "documentation": "Senior Secured Credit Facility [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513"
     ]
    },
    "us-gaap_SharePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SharePrice",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquityParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividend per share",
        "verboseLabel": "Share price",
        "documentation": "Price of a single share of a number of saleable stocks of a company."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharesIssuedPricePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SharesIssuedPricePerShare",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares issued, price per share",
        "documentation": "Per share or per unit amount of equity securities issued."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SharesOutstanding",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance, shares",
        "periodEndLabel": "Balance, shares",
        "label": "Shares, Outstanding",
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury."
       }
      }
     },
     "auth_ref": [
      "r1490",
      "r1494",
      "r1495"
     ]
    },
    "us-gaap_ShortTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "ShortTermInvestments",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments",
        "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current."
       }
      }
     },
     "auth_ref": [
      "r1341"
     ]
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation and Summary of Significant Accounting Policies",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r158",
      "r159"
     ]
    },
    "TGLS_SoftwareAndLicensesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "SoftwareAndLicensesMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software and Licenses [Member]",
        "documentation": "Software and Licenses [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "SolicitingMaterial",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Soliciting Material",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r1223"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrual": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StandardProductWarrantyAccrual",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance at beginning of period",
        "periodEndLabel": "Balance at end of period",
        "label": "Standard Product Warranty Accrual",
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r1481",
      "r1484"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StandardProductWarrantyAccrualPayments",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Reductions for payments made under product warranties",
        "label": "Standard Product Warranty Accrual, Decrease for Payments",
        "documentation": "Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties."
       }
      }
     },
     "auth_ref": [
      "r1482"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualWarrantiesIssued": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StandardProductWarrantyAccrualWarrantiesIssued",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfProductWarrantyLiabilityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accruals for product warranties issued during period",
        "documentation": "Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties."
       }
      }
     },
     "auth_ref": [
      "r1483"
     ]
    },
    "us-gaap_StandardProductWarrantyDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StandardProductWarrantyDescription",
     "presentation": [
      "http://tecnoglass.com/role/BasisOfPresentationAndSummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product warranties description",
        "documentation": "Describes the nature of the product warranty, including the approximate term of the product warranty, how the product warranty arose, and the events or circumstances that would require the warrantor to perform under the product warranty."
       }
      }
     },
     "auth_ref": [
      "r1478",
      "r1479"
     ]
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments [Axis]",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r73",
      "r197",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r229",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r317",
      "r323",
      "r324",
      "r335",
      "r336",
      "r600",
      "r603",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r1092",
      "r1093",
      "r1094",
      "r1098",
      "r1195",
      "r1595",
      "r1596",
      "r1597",
      "r1598",
      "r1599",
      "r1600",
      "r1601",
      "r1602",
      "r1603",
      "r1604",
      "r1605",
      "r1606",
      "r1607",
      "r1608",
      "r1609",
      "r1610",
      "r1611",
      "r1612",
      "r1613",
      "r1614",
      "r1615",
      "r1616",
      "r1617",
      "r1618",
      "r1619",
      "r1620",
      "r1621",
      "r1633",
      "r1634"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r65",
      "r80",
      "r111",
      "r112",
      "r135",
      "r136",
      "r137",
      "r170",
      "r171",
      "r172",
      "r174",
      "r182",
      "r185",
      "r187",
      "r198",
      "r268",
      "r271",
      "r320",
      "r321",
      "r322",
      "r387",
      "r414",
      "r419",
      "r420",
      "r421",
      "r424",
      "r426",
      "r429",
      "r459",
      "r460",
      "r462",
      "r463",
      "r515",
      "r532",
      "r533",
      "r541",
      "r542",
      "r543",
      "r545",
      "r609",
      "r610",
      "r679",
      "r680",
      "r681",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r698",
      "r723",
      "r724",
      "r725",
      "r726",
      "r727",
      "r728",
      "r732",
      "r744",
      "r791",
      "r831",
      "r832",
      "r842",
      "r843",
      "r876",
      "r895",
      "r920",
      "r921",
      "r922",
      "r945",
      "r1012",
      "r1498"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails",
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "auth_ref": [
      "r199",
      "r227",
      "r228",
      "r797",
      "r798",
      "r799",
      "r800",
      "r801",
      "r802",
      "r803",
      "r804",
      "r805",
      "r806",
      "r807",
      "r808",
      "r809",
      "r810",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r816",
      "r817",
      "r818",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830",
      "r851",
      "r852",
      "r853",
      "r854",
      "r950",
      "r953",
      "r955",
      "r1021",
      "r1023",
      "r1026",
      "r1035",
      "r1039",
      "r1041",
      "r1042",
      "r1043",
      "r1046",
      "r1047",
      "r1048",
      "r1049",
      "r1050",
      "r1051",
      "r1052",
      "r1053",
      "r1054",
      "r1060",
      "r1088",
      "r1107",
      "r1109",
      "r1183",
      "r1184",
      "r1185",
      "r1186",
      "r1187",
      "r1188",
      "r1189",
      "r1190",
      "r1194",
      "r1204",
      "r1595",
      "r1596",
      "r1597",
      "r1599",
      "r1600",
      "r1601",
      "r1602",
      "r1603",
      "r1604",
      "r1605",
      "r1606",
      "r1607",
      "r1608",
      "r1609",
      "r1610",
      "r1611",
      "r1612",
      "r1613",
      "r1614",
      "r1615",
      "r1616",
      "r1617",
      "r1618",
      "r1619",
      "r1620",
      "r1621",
      "r1633",
      "r1634"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StatementLineItems",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative",
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables",
      "http://tecnoglass.com/role/ScheduleOfPurchasePriceAllocationConsiderationTransferredDetails",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "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": [
      "r80",
      "r81",
      "r87",
      "r88",
      "r95",
      "r105",
      "r107",
      "r109",
      "r110",
      "r111",
      "r112",
      "r118",
      "r170",
      "r171",
      "r172",
      "r198",
      "r389",
      "r390",
      "r392",
      "r394",
      "r399",
      "r414",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r426",
      "r428",
      "r429",
      "r440",
      "r732",
      "r794",
      "r831",
      "r832",
      "r841",
      "r842",
      "r843",
      "r936",
      "r946",
      "r947",
      "r959",
      "r960",
      "r961",
      "r962",
      "r963",
      "r964",
      "r967",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r976",
      "r977",
      "r978",
      "r979",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r989",
      "r990",
      "r997",
      "r998",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1003",
      "r1004",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1012",
      "r1066",
      "r1082",
      "r1085",
      "r1205",
      "r1638"
     ]
    },
    "TGLS_StatementOfBalanceSheetLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "StatementOfBalanceSheetLocationAxis",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement Of Balance Sheet Location [Axis]",
        "verboseLabel": "StatementOfBalanceSheetLocationAxis [Axis]",
        "documentation": "Statement of balance sheet location axis."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_StatementOfBalanceSheetLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "StatementOfBalanceSheetLocationDomain",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFairValueOfForeignCurrencyHedgesDetails"
     ],
     "auth_ref": []
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StatementScenarioAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "StatementScenarioAxis",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]"
       }
      }
     },
     "auth_ref": [
      "r69",
      "r71",
      "r188",
      "r487",
      "r1305",
      "r1309"
     ]
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StatementTable",
     "presentation": [
      "http://tecnoglass.com/role/RevenuesTradeAccountsReceivableContractAssetsAndContractLiabilitiesTables",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Presentation of information about comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r80",
      "r81",
      "r87",
      "r88",
      "r95",
      "r105",
      "r107",
      "r109",
      "r110",
      "r111",
      "r112",
      "r118",
      "r170",
      "r171",
      "r172",
      "r198",
      "r230",
      "r389",
      "r390",
      "r392",
      "r394",
      "r399",
      "r414",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r426",
      "r428",
      "r429",
      "r440",
      "r732",
      "r794",
      "r831",
      "r832",
      "r841",
      "r842",
      "r843",
      "r876",
      "r936",
      "r946",
      "r947",
      "r959",
      "r960",
      "r961",
      "r962",
      "r963",
      "r964",
      "r967",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r976",
      "r977",
      "r978",
      "r979",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r989",
      "r990",
      "r997",
      "r998",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1003",
      "r1004",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1012",
      "r1066",
      "r1082",
      "r1085",
      "r1205",
      "r1638"
     ]
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "StkPrcOrTsrEstimationMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Price or TSR Estimation Method"
       }
      }
     },
     "auth_ref": [
      "r1234",
      "r1245",
      "r1255",
      "r1281"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StockIssuedDuringPeriodSharesAcquisitions",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares issued during acquisition",
        "documentation": "Number of shares of stock issued during the period pursuant to acquisitions."
       }
      }
     },
     "auth_ref": [
      "r1322",
      "r1334",
      "r1335",
      "r1490",
      "r1492",
      "r1493",
      "r1494",
      "r1495",
      "r1586",
      "r1587",
      "r1589",
      "r1590"
     ]
    },
    "us-gaap_StockRepurchasedDuringPeriodShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StockRepurchasedDuringPeriodShares",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Share Repurchase, shares",
        "label": "Stock Repurchased During Period, Shares",
        "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r937",
      "r1012",
      "r1036",
      "r1322",
      "r1334",
      "r1335",
      "r1490",
      "r1492",
      "r1493",
      "r1494",
      "r1495",
      "r1586",
      "r1587",
      "r1589",
      "r1590"
     ]
    },
    "us-gaap_StockRepurchasedDuringPeriodValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StockRepurchasedDuringPeriodValue",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Share Repurchase",
        "label": "Stock Repurchased During Period, Value",
        "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r945",
      "r1012",
      "r1036",
      "r1213",
      "r1322",
      "r1334",
      "r1335",
      "r1490",
      "r1492",
      "r1493",
      "r1494",
      "r1495",
      "r1586",
      "r1587",
      "r1589",
      "r1590"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance",
        "periodEndLabel": "Balance",
        "label": "Equity, Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r969",
      "r986",
      "r1013",
      "r1014",
      "r1180",
      "r1214",
      "r1342",
      "r1404",
      "r1407",
      "r1408",
      "r1446",
      "r1569",
      "r1643"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "SHAREHOLDERS\u2019 EQUITY"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Shareholders\u2019 equity attributable to controlling interest",
        "label": "Equity, Including Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount of equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r20",
      "r22",
      "r64",
      "r65",
      "r112",
      "r136",
      "r170",
      "r171",
      "r172",
      "r174",
      "r182",
      "r185",
      "r268",
      "r271",
      "r320",
      "r321",
      "r322",
      "r387",
      "r414",
      "r420",
      "r421",
      "r424",
      "r426",
      "r459",
      "r460",
      "r462",
      "r463",
      "r515",
      "r532",
      "r533",
      "r541",
      "r542",
      "r543",
      "r545",
      "r609",
      "r610",
      "r679",
      "r680",
      "r681",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r698",
      "r723",
      "r724",
      "r728",
      "r744",
      "r791",
      "r831",
      "r832",
      "r842",
      "r843",
      "r921",
      "r922",
      "r943",
      "r969",
      "r986",
      "r1013",
      "r1014",
      "r1037",
      "r1197",
      "r1198",
      "r1213",
      "r1322",
      "r1334",
      "r1404",
      "r1407",
      "r1408",
      "r1446",
      "r1569",
      "r1643"
     ]
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders\u2019 Equity",
        "documentation": "The entire disclosure for equity."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r111",
      "r112",
      "r119",
      "r398",
      "r400",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r415",
      "r420",
      "r421",
      "r424",
      "r426",
      "r427",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r439",
      "r677",
      "r695",
      "r696",
      "r753",
      "r1015",
      "r1017",
      "r1038"
     ]
    },
    "TGLS_StormArmourSolutionsLLCMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "StormArmourSolutionsLLCMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Storm Armour Solutions LLC [Member]",
        "documentation": "Storm Armour Solutions LLC [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_StudioAvantiSASMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "StudioAvantiSASMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails",
      "http://tecnoglass.com/role/ScheduleOfSaleToRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Studio Avanti SAS [Member]",
        "documentation": "Studio Avanti SAS [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION"
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_SupplierFinanceProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "SupplierFinanceProgramMember",
     "presentation": [
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplier Finance Program [Member]",
        "documentation": "Supplier Finance Program [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplierFinanceProgramTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "SupplierFinanceProgramTextBlock",
     "presentation": [
      "http://tecnoglass.com/role/SupplierFinanceProgram"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplier Finance Program",
        "documentation": "The entire disclosure for supplier finance program."
       }
      }
     },
     "auth_ref": [
      "r331",
      "r332",
      "r333",
      "r334",
      "r1099"
     ]
    },
    "ecd_TabularListTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TabularListTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tabular List, Table"
       }
      }
     },
     "auth_ref": [
      "r1275"
     ]
    },
    "TGLS_TerminationCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "TerminationCosts",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Termination costs",
        "documentation": "Termination costs."
       }
      }
     },
     "auth_ref": []
    },
    "TGLS_ThroughTwoThousandTwentyEightMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ThroughTwoThousandTwentyEightMember",
     "presentation": [
      "http://tecnoglass.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Through 2028 [Member]",
        "documentation": "Through 2028 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_TitleOfIndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "TitleOfIndividualAxis",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Axis]"
       }
      }
     },
     "auth_ref": [
      "r1439",
      "r1581"
     ]
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "auth_ref": []
    },
    "ecd_TotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r1267"
     ]
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TotalShareholderRtnVsPeerGroupTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Vs Peer Group"
       }
      }
     },
     "auth_ref": [
      "r1274"
     ]
    },
    "us-gaap_TradeNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "TradeNamesMember",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfFinite-livedIntangibleAssetsNetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade Names [Member]",
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof."
       }
      }
     },
     "auth_ref": [
      "r1130",
      "r1451",
      "r1452",
      "r1453",
      "r1454",
      "r1455",
      "r1456",
      "r1458",
      "r1461",
      "r1462",
      "r1463"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "TradingSymbol",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "presentation": [
      "http://tecnoglass.com/role/SupplierFinanceProgramDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms."
       }
      }
     },
     "auth_ref": [
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r274",
      "r275",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r382",
      "r412",
      "r677",
      "r712",
      "r716",
      "r718",
      "r754",
      "r755",
      "r756",
      "r757",
      "r758",
      "r759",
      "r761",
      "r762",
      "r763",
      "r764",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r773",
      "r774",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r783",
      "r784",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r878",
      "r896",
      "r1166",
      "r1168",
      "r1169",
      "r1170",
      "r1171",
      "r1172",
      "r1173",
      "r1174",
      "r1175",
      "r1182",
      "r1312",
      "r1313",
      "r1314",
      "r1315",
      "r1316",
      "r1317",
      "r1318",
      "r1442",
      "r1443",
      "r1444",
      "r1445",
      "r1550",
      "r1552",
      "r1553",
      "r1554",
      "r1561",
      "r1564",
      "r1565",
      "r1566"
     ]
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r1297"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r1298"
     ]
    },
    "ecd_TrdArrExpirationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TrdArrExpirationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Expiration Date"
       }
      }
     },
     "auth_ref": [
      "r1298"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Name",
        "label": "Trading Arrangement, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r1296"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title"
       }
      }
     },
     "auth_ref": [
      "r1296"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TrdArrSecuritiesAggAvailAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Available"
       }
      }
     },
     "auth_ref": [
      "r1299"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Termination Date"
       }
      }
     },
     "auth_ref": [
      "r1297"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock, Common [Member]",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r831",
      "r832",
      "r843",
      "r1498"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Treasury stock balance, shares",
        "periodEndLabel": "Treasury stock balance, shares",
        "label": "Treasury Stock, Common, Shares",
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r437",
      "r438",
      "r1586",
      "r1587",
      "r1590"
     ]
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "TreasuryStockSharesAcquired",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase, shares",
        "verboseLabel": "Number of shares repurchased",
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury."
       }
      }
     },
     "auth_ref": [
      "r1335",
      "r1490",
      "r1493",
      "r1494",
      "r1495",
      "r1586",
      "r1587",
      "r1589",
      "r1590"
     ]
    },
    "us-gaap_TreasuryStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "TreasuryStockValue",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/BalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/BalanceSheets",
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Treasury stock",
        "label": "Treasury shares, aggregate repurchase cost",
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury."
       }
      }
     },
     "auth_ref": [
      "r1496",
      "r1497",
      "r1498"
     ]
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "TreasuryStockValueAcquiredCostMethod",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/ShareholdersEquityDetailsNarrative",
      "http://tecnoglass.com/role/StatementsOfShareholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Share Repurchase",
        "negatedTerseLabel": "Value of shares repurchased",
        "label": "Treasury Stock, Value, Acquired, Cost Method",
        "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method."
       }
      }
     },
     "auth_ref": [
      "r1322",
      "r1334",
      "r1335",
      "r1490",
      "r1492",
      "r1493",
      "r1494",
      "r1495"
     ]
    },
    "country_US": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2026",
     "localname": "US",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfComponentsOfIncomeTaxExpenseDetails",
      "http://tecnoglass.com/role/ScheduleOfGeographicInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UnbilledReceivablesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "UnbilledReceivablesCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails": {
       "parentTag": "us-gaap_ContractWithCustomerAssetGrossCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfContractAssetsAndLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unbilled contract receivables, gross",
        "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2026",
     "localname": "UndrlygSecurityMktPriceChngPct",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Underlying Security Market Price Change"
       }
      }
     },
     "auth_ref": [
      "r1293"
     ]
    },
    "TGLS_VidrioAndinoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "VidrioAndinoMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative",
      "http://tecnoglass.com/role/ScheduleOfRelatedPartiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vidrio Andino [Member]",
        "documentation": "Vidrio Andino [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted weighted average common shares outstanding",
        "verboseLabel": "Denominator for diluted earnings per ordinary share - weighted average shares outstanding",
        "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": [
      "r190",
      "r195"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://tecnoglass.com/role/ScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://tecnoglass.com/role/StatementsOfOperationsAndOtherComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic weighted average common shares outstanding",
        "verboseLabel": "Denominator for basic earnings per ordinary share - weighted average shares outstanding",
        "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": [
      "r189",
      "r195"
     ]
    },
    "TGLS_WorkingCapitalAdjustment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "WorkingCapitalAdjustment",
     "crdr": "credit",
     "presentation": [
      "http://tecnoglass.com/role/AcquisitionsDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Working capital adjustment",
        "documentation": "Working capital adjustment"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WriteOffOfDeferredDebtIssuanceCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "WriteOffOfDeferredDebtIssuanceCost",
     "crdr": "debit",
     "presentation": [
      "http://tecnoglass.com/role/DebtDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Write-off of the remaining unamortized",
        "documentation": "Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt."
       }
      }
     },
     "auth_ref": [
      "r35"
     ]
    },
    "dei_WrittenCommunications": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "WrittenCommunications",
     "presentation": [
      "http://tecnoglass.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Written Communications",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act."
       }
      }
     },
     "auth_ref": [
      "r1303"
     ]
    },
    "TGLS_ZofracostaSAMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tecnoglass.com/20260630",
     "localname": "ZofracostaSAMember",
     "presentation": [
      "http://tecnoglass.com/role/RelatedPartiesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Zofracosta SA [Member]",
        "documentation": "Zofracosta SA [Member]"
       }
      }
     },
     "auth_ref": []
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "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/2147477401/830-230-45-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20"
  },
  "r4": {
   "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"
  },
  "r5": {
   "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"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "470",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1"
  },
  "r7": {
   "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"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A"
  },
  "r11": {
   "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"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "470",
   "SubTopic": "50",
   "Section": "40",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481303/470-50-40-2"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "470",
   "SubTopic": "50",
   "Section": "40",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481303/470-50-40-4"
  },
  "r15": {
   "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"
  },
  "r16": {
   "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"
  },
  "r17": {
   "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"
  },
  "r18": {
   "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"
  },
  "r19": {
   "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"
  },
  "r20": {
   "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"
  },
  "r21": {
   "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"
  },
  "r22": {
   "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"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r26": {
   "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"
  },
  "r27": {
   "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"
  },
  "r28": {
   "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"
  },
  "r29": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r30": {
   "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)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r31": {
   "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"
  },
  "r32": {
   "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"
  },
  "r33": {
   "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"
  },
  "r34": {
   "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"
  },
  "r35": {
   "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(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r36": {
   "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"
  },
  "r37": {
   "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"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r39": {
   "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"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r41": {
   "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"
  },
  "r42": {
   "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"
  },
  "r43": {
   "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"
  },
  "r44": {
   "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"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480581/330-10-S99-2"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/810/tableOfContent"
  },
  "r48": {
   "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"
  },
  "r49": {
   "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/2147478524/942-220-S99-1"
  },
  "r50": {
   "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/2147478524/942-220-S99-1"
  },
  "r51": {
   "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/2147478524/942-220-S99-1"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "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"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8"
  },
  "r56": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r57": {
   "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"
  },
  "r58": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r59": {
   "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"
  },
  "r60": {
   "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"
  },
  "r61": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r62": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r63": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r64": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r65": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r66": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205/tableOfContent"
  },
  "r67": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r68": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481034/205-10-S45-5"
  },
  "r69": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481003/205-10-S50-2"
  },
  "r70": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.4-03(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480922/205-10-S99-3"
  },
  "r71": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SAB Topic 1.B.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480922/205-10-S99-7"
  },
  "r72": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-10"
  },
  "r73": {
   "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"
  },
  "r74": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-3"
  },
  "r75": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480868/205-20-S45-2"
  },
  "r78": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.Z.5.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480781/205-20-S99-2"
  },
  "r79": {
   "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"
  },
  "r80": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-11"
  },
  "r81": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-13"
  },
  "r82": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-2"
  },
  "r83": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-3"
  },
  "r84": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-4"
  },
  "r85": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-6"
  },
  "r86": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-7"
  },
  "r87": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-8"
  },
  "r88": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-9"
  },
  "r89": {
   "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"
  },
  "r90": {
   "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(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r91": {
   "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"
  },
  "r92": {
   "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"
  },
  "r93": {
   "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"
  },
  "r94": {
   "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"
  },
  "r95": {
   "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(19)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r96": {
   "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(19)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r97": {
   "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(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r100": {
   "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)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r101": {
   "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)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r102": {
   "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)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r103": {
   "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)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r104": {
   "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)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r105": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r106": {
   "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)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r107": {
   "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(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r108": {
   "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(26)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r109": {
   "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"
  },
  "r110": {
   "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))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r111": {
   "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"
  },
  "r112": {
   "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"
  },
  "r113": {
   "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"
  },
  "r114": {
   "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)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r115": {
   "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(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r116": {
   "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(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r117": {
   "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(30)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r118": {
   "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(30)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r119": {
   "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(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r120": {
   "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(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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)(d)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r123": {
   "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"
  },
  "r124": {
   "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(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r125": {
   "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"
  },
  "r126": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-10"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r130": {
   "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"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r133": {
   "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"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r135": {
   "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"
  },
  "r136": {
   "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"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r140": {
   "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"
  },
  "r141": {
   "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"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(o)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-23"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "35",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-35"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r148": {
   "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"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-21D"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4"
  },
  "r154": {
   "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"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r156": {
   "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"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-9"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/235/tableOfContent"
  },
  "r159": {
   "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"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-1"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-4"
  },
  "r162": {
   "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(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r163": {
   "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)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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(k)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r167": {
   "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(k)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r168": {
   "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(n))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r169": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-12"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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"
  },
  "r189": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r198": {
   "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"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-9"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-24"
  },
  "r213": {
   "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"
  },
  "r214": {
   "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"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "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"
  },
  "r229": {
   "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"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-20"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-3C"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-3D"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/330/tableOfContent"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "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"
  },
  "r298": {
   "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"
  },
  "r299": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-4"
  },
  "r303": {
   "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"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r309": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-4"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-5"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482705/350-40-65-4"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482705/350-40-65-4"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-2"
  },
  "r324": {
   "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"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482645/405-30-50-1"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-50/tableOfContent"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-3"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r374": {
   "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"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-1"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-2"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-3"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479857/480-10-S50-1"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479857/480-10-S50-3"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(01)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(01)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3A",
   "Subparagraph": "(24)(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-3A"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/505/tableOfContent"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481142/505-10-45-2"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r404": {
   "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"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r407": {
   "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"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-16"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r414": {
   "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"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-4"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-5"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-5"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S35",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480125/505-10-S35-1"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480100/505-10-S45-2"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480100/505-10-S45-3"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480100/505-10-S45-4"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480100/505-10-S45-8"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480070/505-10-S50-1"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480070/505-10-S50-6"
  },
  "r426": {
   "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"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "4",
   "Subparagraph": "(SAB Topic 4.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-4"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 4.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-5"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SAB Topic 5.Q.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-7"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479982/505-20-S25-1"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S25",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479982/505-20-S25-2"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S25",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479982/505-20-S25-3"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479951/505-20-S50-1"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479951/505-20-S50-2"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479951/505-20-S50-3"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 1.D.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479921/505-20-S99-1"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481108/505-30-30-6"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-2"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r441": {
   "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"
  },
  "r442": {
   "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"
  },
  "r443": {
   "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"
  },
  "r444": {
   "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"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-11"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "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"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "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"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-7"
  },
  "r456": {
   "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"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479719/606-10-65-2"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479719/606-10-65-2"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479719/606-10-65-2"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479719/606-10-65-3"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479719/606-10-65-3"
  },
  "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": "(n)",
   "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": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(j)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(j)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(j)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(j)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(m)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(q)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-7"
  },
  "r486": {
   "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"
  },
  "r487": {
   "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"
  },
  "r488": {
   "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"
  },
  "r489": {
   "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"
  },
  "r490": {
   "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"
  },
  "r491": {
   "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"
  },
  "r492": {
   "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"
  },
  "r493": {
   "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"
  },
  "r494": {
   "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"
  },
  "r495": {
   "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"
  },
  "r496": {
   "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"
  },
  "r497": {
   "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"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r500": {
   "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"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "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"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "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"
  },
  "r509": {
   "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"
  },
  "r510": {
   "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"
  },
  "r511": {
   "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"
  },
  "r512": {
   "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"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "17",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480336/718-10-65-17"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/740/tableOfContent"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C"
  },
  "r525": {
   "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"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r527": {
   "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"
  },
  "r528": {
   "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"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r531": {
   "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"
  },
  "r532": {
   "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"
  },
  "r533": {
   "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"
  },
  "r534": {
   "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.1.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r535": {
   "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"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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/2147477891/740-270-50-1"
  },
  "r539": {
   "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"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478758/740-323-25-1"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/805-10/tableOfContent"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-4"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-5"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-7"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/805-20/tableOfContent"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-2"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-3"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-4"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-4A"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-4A"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-4A"
  },
  "r587": {
   "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"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/805-30/tableOfContent"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-2"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-3"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-4"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-4"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-4"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479326/805-40-45-1"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r611": {
   "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"
  },
  "r612": {
   "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"
  },
  "r613": {
   "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"
  },
  "r614": {
   "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"
  },
  "r615": {
   "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"
  },
  "r616": {
   "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"
  },
  "r617": {
   "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"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/815/tableOfContent"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1B"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4CC",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4CC"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4CCC",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4CCC",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4CCC",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4CCC"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4E"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4F"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4F",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4F"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4H",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4H"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4H",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4H"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4I"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-5C"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-7"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-7A"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8A"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8C"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480339/815-10-65-8"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480339/815-10-65-8"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480339/815-10-65-8"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479693/815-10-S50-1"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "15",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480960/815-15-50-3"
  },
  "r684": {
   "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"
  },
  "r685": {
   "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"
  },
  "r686": {
   "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"
  },
  "r687": {
   "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"
  },
  "r688": {
   "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"
  },
  "r689": {
   "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"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-5"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-6"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r698": {
   "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"
  },
  "r699": {
   "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"
  },
  "r700": {
   "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"
  },
  "r701": {
   "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"
  },
  "r702": {
   "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"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-10"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-11"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-11"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r717": {
   "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"
  },
  "r718": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-32"
  },
  "r719": {
   "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"
  },
  "r720": {
   "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"
  },
  "r721": {
   "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"
  },
  "r722": {
   "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"
  },
  "r723": {
   "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"
  },
  "r724": {
   "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"
  },
  "r725": {
   "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"
  },
  "r726": {
   "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"
  },
  "r727": {
   "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"
  },
  "r728": {
   "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"
  },
  "r729": {
   "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"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "12A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A"
  },
  "r733": {
   "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"
  },
  "r734": {
   "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"
  },
  "r735": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-4"
  },
  "r736": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r738": {
   "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"
  },
  "r739": {
   "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"
  },
  "r740": {
   "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"
  },
  "r741": {
   "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"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r744": {
   "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"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/850/tableOfContent"
  },
  "r746": {
   "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"
  },
  "r747": {
   "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"
  },
  "r748": {
   "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"
  },
  "r749": {
   "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"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r752": {
   "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"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 1.B.3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480148/855-10-S99-1"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r761": {
   "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"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(cc)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4D"
  },
  "r773": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-1A"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-1A"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r776": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r777": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r779": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(4)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r780": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r782": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r783": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r784": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r785": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r786": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r787": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r788": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r789": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r790": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r791": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-5"
  },
  "r792": {
   "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"
  },
  "r793": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-7"
  },
  "r794": {
   "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"
  },
  "r795": {
   "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"
  },
  "r796": {
   "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/2147478859/928-340-50-1"
  },
  "r797": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r799": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r800": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r801": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19"
  },
  "r802": {
   "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/2147477215/932-235-50-20"
  },
  "r803": {
   "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/2147477215/932-235-50-20"
  },
  "r804": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r805": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r806": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r807": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r809": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r810": {
   "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/2147477215/932-235-50-28"
  },
  "r811": {
   "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/2147477215/932-235-50-28"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r816": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r817": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r818": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r819": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r820": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r821": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r822": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r823": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r824": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6"
  },
  "r825": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7"
  },
  "r826": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r827": {
   "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/2147477215/932-235-50-8"
  },
  "r828": {
   "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/2147477215/932-235-50-8"
  },
  "r829": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "280",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1"
  },
  "r830": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1"
  },
  "r831": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477657/942-210-S45-1"
  },
  "r832": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478478/942-210-S50-1"
  },
  "r833": {
   "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/2147478546/942-210-S99-1"
  },
  "r834": {
   "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)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r835": {
   "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(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r836": {
   "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(13)(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r837": {
   "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(15)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r838": {
   "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(15)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r839": {
   "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(15)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r840": {
   "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(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r841": {
   "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(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r842": {
   "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(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r843": {
   "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(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r844": {
   "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(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r845": {
   "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(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r846": {
   "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(7)(e)(1)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r847": {
   "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(7)(e)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r848": {
   "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(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r849": {
   "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(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r850": {
   "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/2147478524/942-220-S99-1"
  },
  "r851": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478671/942-235-S50-1"
  },
  "r852": {
   "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)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r853": {
   "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/2147477314/942-235-S99-1"
  },
  "r854": {
   "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)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r855": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.9-06)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-2"
  },
  "r856": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r857": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r858": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r859": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r860": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r861": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(ff)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r862": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(fff)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r863": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2"
  },
  "r864": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3"
  },
  "r865": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3"
  },
  "r866": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3"
  },
  "r867": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3"
  },
  "r868": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3"
  },
  "r869": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A"
  },
  "r870": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A"
  },
  "r871": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A"
  },
  "r872": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A"
  },
  "r873": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A"
  },
  "r874": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478443/942-360-45-1"
  },
  "r875": {
   "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/2147478451/942-360-50-1"
  },
  "r876": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "405",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477787/942-405-45-2"
  },
  "r877": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "740",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477617/942-740-50-1"
  },
  "r878": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478898/942-825-50-1"
  },
  "r879": {
   "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)(1)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r880": {
   "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)(1)(h))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r881": {
   "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/2147478777/944-210-S99-1"
  },
  "r882": {
   "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/2147478777/944-210-S99-1"
  },
  "r883": {
   "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)(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r884": {
   "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/2147478777/944-210-S99-1"
  },
  "r885": {
   "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/2147478777/944-210-S99-1"
  },
  "r886": {
   "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)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r887": {
   "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/2147478777/944-210-S99-1"
  },
  "r888": {
   "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/2147478777/944-210-S99-1"
  },
  "r889": {
   "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)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r890": {
   "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/2147478777/944-210-S99-1"
  },
  "r891": {
   "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/2147477250/944-220-S99-1"
  },
  "r892": {
   "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/2147477250/944-220-S99-1"
  },
  "r893": {
   "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/2147477250/944-220-S99-1"
  },
  "r894": {
   "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/2147477250/944-220-S99-1"
  },
  "r895": {
   "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(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r896": {
   "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(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r897": {
   "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(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r898": {
   "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/2147477250/944-220-S99-1"
  },
  "r899": {
   "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/2147477250/944-220-S99-1"
  },
  "r900": {
   "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/2147477965/944-235-S99-1"
  },
  "r901": {
   "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/2147477965/944-235-S99-1"
  },
  "r902": {
   "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/2147477965/944-235-S99-1"
  },
  "r903": {
   "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/2147477965/944-235-S99-1"
  },
  "r904": {
   "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/2147477965/944-235-S99-1"
  },
  "r905": {
   "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/2147477965/944-235-S99-1"
  },
  "r906": {
   "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/2147477965/944-235-S99-1"
  },
  "r907": {
   "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/2147477965/944-235-S99-1"
  },
  "r908": {
   "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/2147477965/944-235-S99-1"
  },
  "r909": {
   "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/2147477965/944-235-S99-1"
  },
  "r910": {
   "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/2147477965/944-235-S99-1"
  },
  "r911": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r912": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r913": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r914": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r915": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r916": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r917": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E"
  },
  "r918": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r919": {
   "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"
  },
  "r920": {
   "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"
  },
  "r921": {
   "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"
  },
  "r922": {
   "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"
  },
  "r923": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r924": {
   "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"
  },
  "r925": {
   "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"
  },
  "r926": {
   "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"
  },
  "r927": {
   "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"
  },
  "r928": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r929": {
   "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"
  },
  "r930": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.W.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1"
  },
  "r931": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "740",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478822/944-740-50-1"
  },
  "r932": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "805",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478072/944-805-50-1"
  },
  "r933": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-1"
  },
  "r934": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-2"
  },
  "r935": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-3"
  },
  "r936": {
   "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"
  },
  "r937": {
   "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"
  },
  "r938": {
   "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"
  },
  "r939": {
   "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"
  },
  "r940": {
   "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"
  },
  "r941": {
   "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"
  },
  "r942": {
   "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"
  },
  "r943": {
   "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/2147478009/946-205-45-3"
  },
  "r944": {
   "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/2147478009/946-205-45-3"
  },
  "r945": {
   "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/2147478009/946-205-45-4"
  },
  "r946": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-6"
  },
  "r947": {
   "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/2147477796/946-210-45-4"
  },
  "r948": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r949": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r950": {
   "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/2147478795/946-210-50-1"
  },
  "r951": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r952": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-12"
  },
  "r953": {
   "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/2147478795/946-210-50-2"
  },
  "r954": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r955": {
   "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/2147478795/946-210-50-6"
  },
  "r956": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r957": {
   "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/2147478795/946-210-50-6"
  },
  "r958": {
   "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/2147478795/946-210-50-6"
  },
  "r959": {
   "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/2147479170/946-210-S99-1"
  },
  "r960": {
   "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/2147479170/946-210-S99-1"
  },
  "r961": {
   "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/2147479170/946-210-S99-1"
  },
  "r962": {
   "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/2147479170/946-210-S99-1"
  },
  "r963": {
   "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/2147479170/946-210-S99-1"
  },
  "r964": {
   "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/2147479170/946-210-S99-1"
  },
  "r965": {
   "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)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r966": {
   "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/2147479170/946-210-S99-1"
  },
  "r967": {
   "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/2147479170/946-210-S99-1"
  },
  "r968": {
   "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/2147479170/946-210-S99-1"
  },
  "r969": {
   "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/2147479170/946-210-S99-1"
  },
  "r970": {
   "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/2147479170/946-210-S99-1"
  },
  "r971": {
   "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/2147479170/946-210-S99-1"
  },
  "r972": {
   "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/2147479170/946-210-S99-1"
  },
  "r973": {
   "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/2147479170/946-210-S99-1"
  },
  "r974": {
   "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/2147479170/946-210-S99-1"
  },
  "r975": {
   "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/2147479170/946-210-S99-1"
  },
  "r976": {
   "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/2147479170/946-210-S99-1"
  },
  "r977": {
   "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/2147479170/946-210-S99-1"
  },
  "r978": {
   "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/2147479170/946-210-S99-1"
  },
  "r979": {
   "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/2147479170/946-210-S99-1"
  },
  "r980": {
   "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/2147479170/946-210-S99-1"
  },
  "r981": {
   "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/2147479170/946-210-S99-1"
  },
  "r982": {
   "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/2147479170/946-210-S99-1"
  },
  "r983": {
   "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/2147479170/946-210-S99-1"
  },
  "r984": {
   "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/2147479170/946-210-S99-1"
  },
  "r985": {
   "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/2147479170/946-210-S99-2"
  },
  "r986": {
   "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/2147479170/946-210-S99-2"
  },
  "r987": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-6"
  },
  "r988": {
   "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/2147479105/946-220-45-7"
  },
  "r989": {
   "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/2147479134/946-220-S99-1"
  },
  "r990": {
   "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/2147479134/946-220-S99-1"
  },
  "r991": {
   "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/2147479134/946-220-S99-1"
  },
  "r992": {
   "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/2147479134/946-220-S99-1"
  },
  "r993": {
   "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/2147479134/946-220-S99-1"
  },
  "r994": {
   "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/2147479134/946-220-S99-1"
  },
  "r995": {
   "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/2147479134/946-220-S99-1"
  },
  "r996": {
   "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/2147479134/946-220-S99-1"
  },
  "r997": {
   "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/2147479134/946-220-S99-1"
  },
  "r998": {
   "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/2147479134/946-220-S99-1"
  },
  "r999": {
   "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/2147479134/946-220-S99-1"
  },
  "r1000": {
   "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/2147479134/946-220-S99-1"
  },
  "r1001": {
   "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/2147479134/946-220-S99-1"
  },
  "r1002": {
   "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/2147479134/946-220-S99-1"
  },
  "r1003": {
   "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/2147479134/946-220-S99-1"
  },
  "r1004": {
   "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/2147479134/946-220-S99-1"
  },
  "r1005": {
   "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/2147479134/946-220-S99-1"
  },
  "r1006": {
   "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/2147479134/946-220-S99-1"
  },
  "r1007": {
   "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/2147479134/946-220-S99-1"
  },
  "r1008": {
   "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/2147479134/946-220-S99-1"
  },
  "r1009": {
   "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/2147479134/946-220-S99-1"
  },
  "r1010": {
   "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/2147479134/946-220-S99-1"
  },
  "r1011": {
   "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/2147479134/946-220-S99-3"
  },
  "r1012": {
   "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/2147479134/946-220-S99-3"
  },
  "r1013": {
   "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/2147479134/946-220-S99-3"
  },
  "r1014": {
   "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/2147479134/946-220-S99-3"
  },
  "r1015": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r1016": {
   "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/2147477968/946-235-50-2"
  },
  "r1017": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r1018": {
   "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/2147477968/946-235-50-2"
  },
  "r1019": {
   "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/2147477802/946-310-45-1"
  },
  "r1020": {
   "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/2147477271/946-320-S99-1"
  },
  "r1021": {
   "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/2147477271/946-320-S99-1"
  },
  "r1022": {
   "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/2147477271/946-320-S99-2"
  },
  "r1023": {
   "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/2147477271/946-320-S99-2"
  },
  "r1024": {
   "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/2147477271/946-320-S99-3"
  },
  "r1025": {
   "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/2147477271/946-320-S99-3"
  },
  "r1026": {
   "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/2147477271/946-320-S99-3"
  },
  "r1027": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5"
  },
  "r1028": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5"
  },
  "r1029": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5A",
   "Subparagraph": "(SX 210.12-13A(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5A"
  },
  "r1030": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5B",
   "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B"
  },
  "r1031": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5B",
   "Subparagraph": "(SX 210.12-13B(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B"
  },
  "r1032": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r1033": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r1034": {
   "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/2147477271/946-320-S99-6"
  },
  "r1035": {
   "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/2147477271/946-320-S99-6"
  },
  "r1036": {
   "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/2147478448/946-505-50-2"
  },
  "r1037": {
   "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/2147478448/946-505-50-3"
  },
  "r1038": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-6"
  },
  "r1039": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478322/948-310-S50-2"
  },
  "r1040": {
   "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(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r1041": {
   "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(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r1042": {
   "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(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r1043": {
   "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(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r1044": {
   "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/2147479196/954-310-45-1"
  },
  "r1045": {
   "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/2147478522/954-440-50-1"
  },
  "r1046": {
   "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 A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r1047": {
   "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/2147478979/970-360-S99-1"
  },
  "r1048": {
   "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/2147478979/970-360-S99-1"
  },
  "r1049": {
   "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/2147478979/970-360-S99-1"
  },
  "r1050": {
   "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/2147478979/970-360-S99-1"
  },
  "r1051": {
   "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/2147478979/970-360-S99-1"
  },
  "r1052": {
   "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/2147478979/970-360-S99-1"
  },
  "r1053": {
   "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/2147478979/970-360-S99-1"
  },
  "r1054": {
   "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/2147478979/970-360-S99-1"
  },
  "r1055": {
   "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/2147477332/976-310-50-1"
  },
  "r1056": {
   "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/2147479230/978-310-50-1"
  },
  "r1057": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/985-20/tableOfContent"
  },
  "r1058": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  },
  "r1059": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(a)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r1060": {
   "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"
  },
  "r1061": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "40",
   "SubTopic": "30",
   "Topic": "350",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40"
  },
  "r1062": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r1063": {
   "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"
  },
  "r1064": {
   "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"
  },
  "r1065": {
   "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"
  },
  "r1066": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r1067": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r1068": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-8"
  },
  "r1069": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-9"
  },
  "r1070": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r1071": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-15"
  },
  "r1072": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-16"
  },
  "r1073": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-20"
  },
  "r1074": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-21"
  },
  "r1075": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-22"
  },
  "r1076": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-12"
  },
  "r1077": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-11"
  },
  "r1078": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-12"
  },
  "r1079": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-14"
  },
  "r1080": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-18"
  },
  "r1081": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-19"
  },
  "r1082": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-21"
  },
  "r1083": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-24"
  },
  "r1084": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-25"
  },
  "r1085": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-4"
  },
  "r1086": {
   "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"
  },
  "r1087": {
   "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"
  },
  "r1088": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482836/275-10-55-18"
  },
  "r1089": {
   "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"
  },
  "r1090": {
   "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"
  },
  "r1091": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r1092": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r1093": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48"
  },
  "r1094": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "49",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49"
  },
  "r1095": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r1096": {
   "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"
  },
  "r1097": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479081/326-30-55-8"
  },
  "r1098": {
   "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"
  },
  "r1099": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477128/405-50-55-3"
  },
  "r1100": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "27",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482395/460-10-55-27"
  },
  "r1101": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r1102": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B"
  },
  "r1103": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C"
  },
  "r1104": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E"
  },
  "r1105": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F"
  },
  "r1106": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "64",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481620/480-10-55-64"
  },
  "r1107": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r1108": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r1109": {
   "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"
  },
  "r1110": {
   "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"
  },
  "r1111": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r1112": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r1113": {
   "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"
  },
  "r1114": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r1115": {
   "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"
  },
  "r1116": {
   "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"
  },
  "r1117": {
   "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"
  },
  "r1118": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "231",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231"
  },
  "r1119": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-8"
  },
  "r1120": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-29"
  },
  "r1121": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-29"
  },
  "r1122": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-38"
  },
  "r1123": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "39",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-39"
  },
  "r1124": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-41"
  },
  "r1125": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "43",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-43"
  },
  "r1126": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "45",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-45"
  },
  "r1127": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "46",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-46"
  },
  "r1128": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-47"
  },
  "r1129": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r1130": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r1131": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r1132": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r1133": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r1134": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r1135": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r1136": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r1137": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r1138": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-29"
  },
  "r1139": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-29"
  },
  "r1140": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1141": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1142": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1143": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1144": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1145": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1146": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1147": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1148": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1149": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "31",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-31"
  },
  "r1150": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r1151": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r1152": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r1153": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r1154": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r1155": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "38",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38"
  },
  "r1156": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-2"
  },
  "r1157": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "740",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478064/805-740-55-13"
  },
  "r1158": {
   "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"
  },
  "r1159": {
   "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"
  },
  "r1160": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r1161": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "181",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-181"
  },
  "r1162": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "182",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-182"
  },
  "r1163": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "183",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-183"
  },
  "r1164": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "184",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-184"
  },
  "r1165": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "185",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-185"
  },
  "r1166": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r1167": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r1168": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "101",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101"
  },
  "r1169": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "103",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103"
  },
  "r1170": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r1171": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r1172": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r1173": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r1174": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r1175": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r1176": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482881/825-10-55-10"
  },
  "r1177": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482881/825-10-55-12"
  },
  "r1178": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8"
  },
  "r1179": {
   "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"
  },
  "r1180": {
   "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"
  },
  "r1181": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "108",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481296/860-20-55-108"
  },
  "r1182": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4"
  },
  "r1183": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17"
  },
  "r1184": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21"
  },
  "r1185": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29"
  },
  "r1186": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3"
  },
  "r1187": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2"
  },
  "r1188": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4"
  },
  "r1189": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5"
  },
  "r1190": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6"
  },
  "r1191": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479401/944-30-55-2"
  },
  "r1192": {
   "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"
  },
  "r1193": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r1194": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r1195": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r1196": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E"
  },
  "r1197": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-11"
  },
  "r1198": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-14"
  },
  "r1199": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-14"
  },
  "r1200": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18"
  },
  "r1201": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-9"
  },
  "r1202": {
   "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/2147478795/946-210-50-1"
  },
  "r1203": {
   "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/2147478795/946-210-50-6"
  },
  "r1204": {
   "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/2147477439/946-210-55-1"
  },
  "r1205": {
   "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/2147477802/946-310-45-1"
  },
  "r1206": {
   "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/2147477271/946-320-S99-1"
  },
  "r1207": {
   "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/2147477271/946-320-S99-2"
  },
  "r1208": {
   "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/2147477271/946-320-S99-3"
  },
  "r1209": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column A)(Footnote 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r1210": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5C",
   "Subparagraph": "(SX 210.12-13C(Column B)(Footnote 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C"
  },
  "r1211": {
   "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/2147477271/946-320-S99-6"
  },
  "r1212": {
   "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/2147479168/946-830-55-10"
  },
  "r1213": {
   "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/2147479168/946-830-55-11"
  },
  "r1214": {
   "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/2147479168/946-830-55-12"
  },
  "r1215": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12"
  },
  "r1216": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r1217": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r1218": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r1219": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r1220": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "g"
  },
  "r1221": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12, 13, 15d"
  },
  "r1222": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r1223": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14a",
   "Subsection": "12"
  },
  "r1224": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r1225": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "15",
   "Subsection": "d"
  },
  "r1226": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r1227": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r1228": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r1229": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r1230": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r1231": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r1232": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r1233": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r1234": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r1235": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r1236": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r1237": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r1238": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r1239": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r1240": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r1241": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r1242": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r1243": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r1244": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r1245": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r1246": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r1247": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r1248": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r1249": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r1250": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r1251": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r1252": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r1253": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r1254": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r1255": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r1256": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r1257": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r1258": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r1259": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r1260": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r1261": {
   "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"
  },
  "r1262": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r1263": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r1264": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r1265": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r1266": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r1267": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r1268": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r1269": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r1270": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r1271": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r1272": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r1273": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r1274": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r1275": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r1276": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r1277": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r1278": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r1279": {
   "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"
  },
  "r1280": {
   "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"
  },
  "r1281": {
   "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"
  },
  "r1282": {
   "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"
  },
  "r1283": {
   "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"
  },
  "r1284": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r1285": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r1286": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r1287": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r1288": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r1289": {
   "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"
  },
  "r1290": {
   "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"
  },
  "r1291": {
   "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"
  },
  "r1292": {
   "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"
  },
  "r1293": {
   "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"
  },
  "r1294": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r1295": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r1296": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r1297": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r1298": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r1299": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r1300": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r1301": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r1302": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r1303": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  },
  "r1304": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "7A",
   "Section": "B",
   "Subsection": "2"
  },
  "r1305": {
   "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"
  },
  "r1306": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2"
  },
  "r1307": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2"
  },
  "r1308": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2"
  },
  "r1309": {
   "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"
  },
  "r1310": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(1)",
   "SubTopic": "10",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r1311": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(6))",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r1312": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r1313": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r1314": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r1315": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r1316": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r1317": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r1318": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r1319": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1320": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1321": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1322": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-11"
  },
  "r1323": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-3"
  },
  "r1324": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-8"
  },
  "r1325": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480657/210-10-S50-9"
  },
  "r1326": {
   "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(19)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1327": {
   "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(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1328": {
   "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(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1329": {
   "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(22)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1330": {
   "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(22)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1331": {
   "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(22)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1332": {
   "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(22)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1333": {
   "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(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1334": {
   "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(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1335": {
   "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(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1336": {
   "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)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1337": {
   "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)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1338": {
   "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)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1339": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1340": {
   "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"
  },
  "r1341": {
   "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(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1342": {
   "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)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r1343": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r1344": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r1345": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r1346": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r1347": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r1348": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r1349": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3"
  },
  "r1350": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-10"
  },
  "r1351": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-12"
  },
  "r1352": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1353": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1354": {
   "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"
  },
  "r1355": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1356": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1357": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1358": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1359": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1360": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1361": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1362": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1363": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1364": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1365": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1366": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1367": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(m)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r1368": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1369": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1370": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1371": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1372": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1373": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1374": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1375": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1376": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1377": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1378": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1379": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1380": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(m)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1381": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(n)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1382": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(o)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1383": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(p)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1384": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(q)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1385": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(r)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1386": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(s)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1387": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(t)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1388": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(u)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r1389": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-30"
  },
  "r1390": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-31"
  },
  "r1391": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-32"
  },
  "r1392": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "33",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-33"
  },
  "r1393": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r1394": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r1395": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r1396": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r1397": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r1398": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r1399": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r1400": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r1401": {
   "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"
  },
  "r1402": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3"
  },
  "r1403": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1404": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-1"
  },
  "r1405": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-4"
  },
  "r1406": {
   "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(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1407": {
   "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)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1408": {
   "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"
  },
  "r1409": {
   "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"
  },
  "r1410": {
   "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)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1411": {
   "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(k)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1412": {
   "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(k)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r1413": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1414": {
   "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"
  },
  "r1415": {
   "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"
  },
  "r1416": {
   "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"
  },
  "r1417": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-12"
  },
  "r1418": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1419": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r1420": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1421": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1422": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1423": {
   "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"
  },
  "r1424": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r1425": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1426": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18"
  },
  "r1427": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1428": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r1429": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A"
  },
  "r1430": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B"
  },
  "r1431": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C"
  },
  "r1432": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r1433": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1434": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1435": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r1436": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r1437": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1438": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1439": {
   "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"
  },
  "r1440": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1441": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-3"
  },
  "r1442": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9"
  },
  "r1443": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r1444": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r1445": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r1446": {
   "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"
  },
  "r1447": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r1448": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r1449": {
   "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"
  },
  "r1450": {
   "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"
  },
  "r1451": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r1452": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r1453": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r1454": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1455": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1456": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1457": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r1458": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1459": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r1460": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1461": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1462": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r1463": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r1464": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482558/350-40-50-1"
  },
  "r1465": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r1466": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1467": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-30/tableOfContent"
  },
  "r1468": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1469": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1470": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r1471": {
   "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"
  },
  "r1472": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r1473": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r1474": {
   "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"
  },
  "r1475": {
   "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"
  },
  "r1476": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1477": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1478": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r1479": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r1480": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r1481": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r1482": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r1483": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r1484": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r1485": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r1486": {
   "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"
  },
  "r1487": {
   "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"
  },
  "r1488": {
   "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"
  },
  "r1489": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1490": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1491": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3"
  },
  "r1492": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480100/505-10-S45-2"
  },
  "r1493": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480100/505-10-S45-3"
  },
  "r1494": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480070/505-10-S50-1"
  },
  "r1495": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1496": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481108/505-30-30-6"
  },
  "r1497": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1"
  },
  "r1498": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r1499": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1500": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1501": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1502": {
   "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"
  },
  "r1503": {
   "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"
  },
  "r1504": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r1505": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1506": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r1507": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r1508": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r1509": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r1510": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r1511": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r1512": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3"
  },
  "r1513": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-7"
  },
  "r1514": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r1515": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r1516": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r1517": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r1518": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-2"
  },
  "r1519": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r1520": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-2"
  },
  "r1521": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-4"
  },
  "r1522": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480060/805-50-25-1"
  },
  "r1523": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480027/805-50-30-1"
  },
  "r1524": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480027/805-50-30-2"
  },
  "r1525": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r1526": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r1527": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r1528": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r1529": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r1530": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r1531": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r1532": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r1533": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r1534": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r1535": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r1536": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r1537": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r1538": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r1539": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4CC",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4CC"
  },
  "r1540": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r1541": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-5"
  },
  "r1542": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-7A"
  },
  "r1543": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8"
  },
  "r1544": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8"
  },
  "r1545": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8"
  },
  "r1546": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480682/815-20-25-6A"
  },
  "r1547": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r1548": {
   "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"
  },
  "r1549": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1550": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "54B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B"
  },
  "r1551": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1552": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1553": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1554": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1555": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1556": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1557": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1558": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1559": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1560": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r1561": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E"
  },
  "r1562": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r1563": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r1564": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r1565": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-10"
  },
  "r1566": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-11"
  },
  "r1567": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-11"
  },
  "r1568": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r1569": {
   "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"
  },
  "r1570": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1571": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1572": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "830",
   "SubTopic": "230",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r1573": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-1A"
  },
  "r1574": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r1575": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r1576": {
   "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"
  },
  "r1577": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r1578": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1579": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1580": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1581": {
   "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"
  },
  "r1582": {
   "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"
  },
  "r1583": {
   "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"
  },
  "r1584": {
   "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"
  },
  "r1585": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(b)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-1A"
  },
  "r1586": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477657/942-210-S45-1"
  },
  "r1587": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478478/942-210-S50-1"
  },
  "r1588": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r1589": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r1590": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r1591": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.9-06)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-2"
  },
  "r1592": {
   "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)(16)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r1593": {
   "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)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r1594": {
   "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/2147478777/944-210-S99-1"
  },
  "r1595": {
   "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"
  },
  "r1596": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r1597": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r1598": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C"
  },
  "r1599": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D"
  },
  "r1600": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4G",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G"
  },
  "r1601": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1602": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1603": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1604": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1605": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1606": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1607": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1608": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1609": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1610": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1611": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1612": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1613": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1614": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1615": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1616": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1617": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1618": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r1619": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1620": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1621": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1622": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1623": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1624": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1625": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1626": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1627": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1628": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1629": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1630": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1631": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479032/944-605-50-1"
  },
  "r1632": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r1633": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r1634": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r1635": {
   "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/2147478009/946-205-45-4"
  },
  "r1636": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r1637": {
   "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/2147479170/946-210-S99-1"
  },
  "r1638": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r1639": {
   "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/2147479105/946-220-45-3"
  },
  "r1640": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r1641": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r1642": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r1643": {
   "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/2147479134/946-220-S99-3"
  },
  "r1644": {
   "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/2147479134/946-220-S99-3"
  },
  "r1645": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "970",
   "SubTopic": "810",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477383/970-810-45-1"
  },
  "r1646": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-1"
  },
  "r1647": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-1"
  },
  "r1648": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-1"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>83
<FILENAME>0001493152-26-036362-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001493152-26-036362-xbrl.zip
M4$L#!!0    ( -&C!EW3F-.O#@@   1    *    97@S,2TQ+FAT;>U;77/B
M-A1]STS^@YJ9=K(S$$BVV4Z!,D/ :>AD0YIX=W8?A2V#&EGR2C8L_?6]5[(-
M(60WVR8M%/9AB6U]G"OI'IU[9;<N_+>7[?V]UH77Z<$OP7\MO^]?>NU6S?W"
MTUK^N'4VZ'TDM_['2^^7@TC)M$&.ZTE*?!XS0Z[8E-RHF,J*NU$AMTSSZ  J
M0M7KHEY,]8C+!JD?M'^00Y,T6[7KI2)/;;I)RL:2M$E2]CFM4L%'<$/ST;BX
MQ67(L,&3GX]^2M*#=NM\<.4O]E6-:,S%K/&UWFQ9P_]D#ART=-;V/ESTS_K^
M_M[KXZ/C5NT,Q@V;;V^P5<6TO)P= 2!G^IEGHNO=^/WS?K?C]P=7^WN#<]*]
MZ'OGQ/O@==_Y_?<>&9S#8^_FI6?I1:R[?G=S^ZYS!0O-'Y!;KXM&DM?U$S"*
M^!<>N>W<G'6NO-OJX,.E]Y%TNCX^.:G73S;/W)=?@']D)N71[#E!]RO[>[\I
MP\C;(]*C6#)@&CLAZ9BFC0VS9O44^)VS2X]TO<O+V^M.MW_UZR\']0-[?=WI
M]8KK;S9LRL-TC$7KWS?)4.F0Z6J@A*") 4#%7P=V@VKY-]_>P01G(J"B&+!4
M)0?Y=M?R>W\;</WHY)3+YQSVXZ-RR/W>/T'XTHO=01O3"2.:33B;LA#6.3?D
M4T8UT(&8P?U$Z90H2<Z5CJ%B]7>B(N*S0*J1H,:0"R5"+D>&]&5PU%RT'/Z[
M69?I?D&W6NLY?HCU_SHK)QOB=6?4L-#! Z^*9^1.JJE@X8A5G//E+A<J:%:J
M%*A3II1+0N6,9#+5&2,FI2F+8<M&7Z2PIX"S<BI(1 .XI8F*>0I3X\H]*"!9
MP(RA>N900+F8WC'H?*%A _="0 3]"M2KV!$6"+@.LAB*26@#X #+D^F8!V-B
M,OQO7G_*-,L;02MB;@2CR!1 O.D8K#0)"Q!EC@(:3P"D"L%@6&5 1</9:C;:
MBN6\(YEUG)77_PN2823B$CP8&6'NL15@F) H>*P7GG,9P<9/4P[M<!F(+ 3/
M!%98Z9D5(!B.EPFX-](3TI80#DA)0KGKFR4DP',AQWXJ6"(34 !(1P$IV-Z-
MA1=0,R:14%-3,))F(VY23:$WBC>=&0"ZLL IID!4C,IC%FS%*MYQRSK.RH\;
MPBW^F#EP<\_[09M/F6J:G#WRF!GW>A5%'"X/S2OKEGU"-;,$  [-AX*AHQ(&
M)#04W(RQ!A:+0>^@YL'KD)M *)-!/51"6@G'!(E6 0OAMG%H#L'[0P9TXOC)
M^QR,J1PQT@&1<9,),/'X-:T>GQXR!^7X-'17[I)C_D,Z&L)."(J0!79R]("
M'NG(H7C06W2OMPAZ0XN7B0M*8!C6V(9UOF.?=9P5^FHS9J3'##1=;.,VZ/@Z
M0U0P* IH!J+HJ54P+!HR<'3771[JJ$Q# Z I)MR@4BDC*"9M8Y@EG N=1>VD
MF:"6/J#P?>^OY+H*'W(0/0#(*,%#: 71#@T/.=4<K> N++-J3F)+F<$HR;)N
M3H,87%EQ@UE,$#R@J+!F0G'A98*BU $#+9)YR 4U7!2W&('"7T.&!4$[07T6
M;H4C[.AI'6=EN+GT]&1E\8"EGJY)'B.K L:<L; HL-R$A\A!U"A)4891 _R%
M21TD)JK#@A^ MC@=<L'3&09<J_I&WK148EG"L=V]HO,0T\&QDN]S;EJ2Z02H
MRMA0,0B4#BT*FR,:,0G!GP#&@B<L03[$(IE,'2L!;_($M-96>,".E]9Q5H(-
MX25O0D5&R_0'^BN+(A:D? ).9E9D4\J8[@E:R5WF"98RMU*<'8%F@HH@<8Q+
MXPQ5EGX%QE,D'2U+,\Q;15]*(>=0AI@6PXR8I5?FQ@1 -1T<Z&$;UNR.2=9Q
M5L(-89*><\VO)5+M<56>@K%E5G++-R@<C*Q4$&0:_7H>P3R:BHJ52>$^OM@"
M#1J8\P(C.7P$3014!;)CJ72./@#NL,=M>!(GLQ+<*PNM.$HW9?2'JL52&PNM
ML+,LE.NM&1'\CL&//7M;*E_YQX.UH[-U=9[MH;/3K<AFVW=GPH(1*W.!@:)G
MD8'F6@,Y9*4GY\'1JKCP0<ZHA$BSD*=*FS(*LS>@W3CF:<K8%W3=4$&<A\]#
M#B!M(X<J1P$RRJ!6@U],8171(/N4<3#$4FHF WLL]VJ7M%ZS);T])+,I2>M.
M<0:.^1D.'(*'/GB&%' &SIY'4&7>>,KH'49#+BMBXR&;V;&O]A3GX8_RR$KY
MY+*[5)=DMT*)T!!J&U8*D4<Y)\\'014@#J6!]VQ<9F $3!;'5(/IUJ)<"JY\
MFV G4M9UM6X/?VQ*5KDC\W?U(@W[>P6\F5EI GQ@WZW+B:/BHB0N)TI,&(8B
MDH[R]P1UKF98G @U8_!T.E9.O]![M 0T\H6(K0CZGL@[1ZM74<V^@][>U#?H
MUQQT#Y9#8W^ODXV@;?*F0D[J)V\VS(;=IPM/ 'Q:__Y?WJ/RP1FJ-%5Q@PP%
M#>[(,0"V)]:NS?_2A%:_73,U!WOQ.YY6K=_>A@WM&67&<\+"J7! ROG8S<5_
M!*L[YBQR2+S/+,CPZ(4,7&+CW]RM[6>PF[57/SOD9;#?5:ODG#,1-L@U*+<F
M5/R4082(%9IDD-B$2X-<4MC7J]5B/?7Z[PLT#GH5G""'G]\H"/L-WELB\;/[
M) ZHYMOLXK:ZO.W>WQ(>[I=+^^I#X^?NOL*)[X^\8)&M47K.0M/SF2]6;;%B
M6S48FF*4%L:VAH/K!G#=5\C*18U?\^-7_.ZS?OSZ_R]02P,$%     @ T:,&
M7?<W@6@<"   G4$   H   !E>#,Q+3(N:'1M[5Q=<^(V%'W/3/Z#FIEVDAD(
M)-OL U!F") -,S2DB=OI/@I;!C6RQ4HR+/WUO5>2#2%DFVV3+A3R$&);NCKZ
MN$?G7CDTKH.?^\W#@\9UM]6!3X(_C: 7]+O-1L5]PM.*?]RX''0^DOO@8[_[
MTU$L4U,C9]6)(0%/F"8W;$;N9$+3DKM1(O=,\?@(*D+5V[Q>0M6(IS52/6K^
MD [UI-ZHW*X4>:GI.BF,34R=&/;9E*G@([BA^&ALCIJ-J\%-L&RV'-.$BWGM
M[PS;LIK_R1P.L'39[/Y^W;OL!8<'[\Y.SQN52Q@B--_<C@[D@_UVD$.6&J9>
M>=#;W;N@=]5KMX+>X.;P8'!%VM>][A6YZMVT;MJ]5I\,KN!Q]^ZM)^1->G?[
MZ]W]KZT;6%/!@-QWV]A)\JYZ#ITBP767W+?N+ELWW?ORX/=^]R-IM0-\<EZM
MOOGZ>_WNOOT"_"/3AL?SUP3=*QT>W-/4<#J2Y -75$2R!(.CL"%BQM34MJQ'
MZZ<A:%WVNZ3=[??O;UOMWLV'GXZJ1_;ZMM7IY-=?W;$9C\P8BU:_KY.A5!%3
MY5 *02<: .5_'=FMIQ'<?7T#4YR)D(I\P(R<'/F-K!%T_C'@ZNGY!4]?<]C/
M3HLA#SK_!N%;+W@';4RGC"@VY6S&(ECG7)-/&55 "6(.]R=2&2)3<B55 A7+
MOQ 9DX"%J1P)JC6YEB+BZ4B37AJ>UI=[#K_N-F6ZW]"M-GJ.GV+]O\[*^99X
MW275+'+PP*N2.7E(Y4RP:,1*SOF\RT42S*;2 '6FAO*4T'1.LM2HC!%MJ&$)
M;-OHBQ3V%'!63@6):0BW%)$)-S UKMR3 BD+F=94S1T**)?0!P:-+QG6<"\"
M1-"N0'F*#6&!D*LP2Z!8"C8 #K \F8UY."8ZPU^+^C.FF#>"O4BX%HPB4P#Q
MFC'T4D]8B"@]"C ^ 9 R@@[#*@,J&L[7L]%.+.<]R6SBK+S[7Y ,(S%/P8.1
M$18>6P*&B8B$QVKI.4]CV/BIX6"'IZ'((O!,8(6UGED"@N%X.0'W1GI"VA+"
M 2E(R+N^7D$"/!=Q;*>$)3(!!8!T))"";5U;>"'58Q(+.=,Y(RDVXMHH$.Z$
MXDW7#0!=6N(4G2/*1^6Y'NS$*MYSRR;.RH];PBW!F#EP"\_[0>E/F:QKSQX^
M9L:]7L8QA\MC?6+=LD>H8I8 P*'Y4#!T5,* A(:"ZS'6P&()Z!W4/'@=<1T*
MJ3.HATI(2>&88*)DR"*XK1V:8_#^B &=.'[J?@['-!TQT@*1<9<)Z.+9.UH^
MNSAF#LK91>2NW"7''$CJ: @;(2A"EMC)T0,">J8AA^)):_&CUF)H#7N\2EQ0
M L.PVBZL\SW[;.*LT)/MF)$.TV ZW\9MT/'W#%'"H"BD&8BBEU;!L&C(P-%=
M<S[4D9D" Z IIERC4BDB*)9:8Y@E7 B=9>VDF*"6/J#P8^\O>5V%#SF('@"D
MI> 16$&T0\TC3A7'7G 7EEDUEZ*E3&.49%G7TR &5U;<2,T E0%%A34G%!=>
M)BA*'>B@1;((N:"&B^+6IW_@WI!A%5!18(E%.^$2>Z+:Q%D9;B]1O5AC/.&K
MEZN3YV@KA['@+BP*?#?E$;(1U3*E*,BH!B;#] Y2%%51SA1 8)P.N>!FCJ'7
MNK:102VI6)9PO/>HZ"+8='"L^/OLNS;)U 1(2]N@,0REBBP*FRT:L13"0 &,
M!$_8!)D1BV2I<:P$#,HGH+IVP@/VO+2)LQ)N"2]UIU1DM$B$H+^R.&:AX5-P
M,KTFKU)$=R]03>[2IUJ>S;)8'04F0/8@%7DVH$.9F><!O43FT:(TPUQ6_*6T
MLH<RQ%099LF0:!T0YH8(D-6QA5U8O7M.V<19B;:$4SK.-5>3J][#\.#*)V/L
MD[7<\A4*!V,L&8:90F]>BF6>6O6)9ZD-/,377,"@AIG."8D</X,F!H("V;%2
MVJ,/@3'LP1N>R:59 >[$01M3782 *%@LE['(QXJ@>.S(>+TU)X(_,/BPIW K
ME4K_>K#V_+6!WK([_'6Q$REM^P)-E%-@::$H4.4LD\]"5R!]K'5B'Q>M"PF?
M)(X*B#2+N)%*%P&8O0%VDX0;P]@7)-U00HB'SR,.(*V18^E1@&[2>.X&GYC'
MRFF6?<HX=,2R:9:&]FSN9)^YWK EO3LDLRV9ZU9^$(ZI&0X<@B<_>) 4<@;.
M[H.G(GD\8_0!PQ^7$+$!D$WJV/=[\D/Q9WEDK7)R*5ZJ"K);(T)H!+4U*S3(
MLYSC4T%0!8A#*N ]&XAI& &=)0E5T'7;(Z\"U[Y24/>1WUZD;-IJW1W^V):$
M<BOU+^S%"O;W$G@SL]($^,"^8.>)H^2B$)Y.I9@R#$52.O(O"RJO9E@R$7+.
MX.EL+)U^H8]H"6CD"\%:'N6]D'=.UZ^BBGT1O;FMK]%O..@.+(?:X4$K&X%M
M\KY$SJOG[[>L#_O_7W@!X(OJ]__Q'N4'9RB-D4F-# 4-'\@9 +;'UL[FM^Q"
MH]>LZ(J#O?H//8U*K[D+F]HK2HW7A)5/AP-3S,E^/KX1K/:8L]@AN2HV[H%+
M<.RGY9O!.KYU)]I4K.:#,*!:.OGVN:B3O<+Z[T&OPOVN7 8G8B*JD5M0W'6H
M^"F#R!XKU,E@8A-E-=*GH,?*Y7RA=7J_Y6@<^#)XA^^ OY%OM._QWLKF>_EX
M\P54"WFT+(=6Y=+CK?RISEG10T\[O^"!-=[]>.P%BVV-PJ663"_F/E^Y^:IM
M5&!H\E%:&ML*#JX;P,U?(VL7-G[- GZ]@ON^!?Q:AK\ 4$L#!!0    ( -&C
M!ETN"(D@J00  -LE   (    97@S,BYH=&WM6FUSVC@0_LX,_V&/F7:2&5X,
M:7(MN,P8<!IW:*#@W#0?A2V#[HSD6'(3^NMO96,@2>_2W(1.F3,? ,O2ZM&S
MC];K'9D7[J=AMUPR+VQK@+^@/Z;KN$.[:S:R7[S;6-\V>Z/!-4S=ZZ']OA((
MKMK0-"(%+EM2"9?T%B9B27@U:ZC"E,8LJ.! '#K.QRU)/&>\#4:E^YK/9-0Q
M&^,'77[4= <VQB+5 47O5(V$;(X-,9LO5*5KGH\NW5VSM8 L6;AJ/V4X[2O9
M-YKA0$N]KOWEPNDY;KETTC(;/21(&^\>!OR<ZOU!]BA7-'YAROOVQ'7.G;[E
M.J/+<FE\-9E>66C>'>W; WM93O-MN715G];[=9C:?;TF:)Z<&@>Y%FM:+EF#
MT=BU!W#H?ED[HUQZ9YS!Z!S<"QNFUJ1G7=K3VNC+T+X&J^_J.RW#V/OF?_DE
M[G_W_YE(Q8+52X)V>+GD"<ZIIYC@<,O4 M2"PN>$Q,A/N(()C42L0 3@4H^+
M>4BDA L1^HS/)3C<J\.1'O$Z]&\2T>F+943XZG6<7AT#&CT7\1*GJWW&Z>/4
M>H1HA ^4^]2'CPFG<&)4RZ66T3H#(B%@(;9OL$RIE\1,,5P8X3[8=]Z"\#D%
MG&K)I-2X=Q%D@', U=1$@C/%$DFD?A483]L\$A%O:U9DK3Y1M%QBW&<>_O-A
M1D-Q6X4%C>ELA:J)T0-Z2)3$,B%<@1+0? MYP%GSJ -.52^%^"+29G:[YYWT
M/D!:TR62>$8XE;7174A78'F:<$V(T=(+(*I]8+HZR,W0K)=++GIC+?D@"5'_
M'@HZU![?Z#&F-PF+Z1(CB-0.W#K]B*#@8VB>'OG'&]=NU;M1;N9?:+X[>=/1
MXCLPG@[2N:VU<QG'*+0DJ<<P\BG","CD,2'W/&$Z]$4QE=K):<@@88AX,28R
M$J($9(1>EUET"1@GW-/M:-!GJ6D=4K!7$F8:$1CRTCEEN;06QCI2U@^,QX-T
M_D#'<DREDCG:AK,JZ$?-@:WA^\2[5F]H0]\>#J=CJ^]<?GA?,2KI]=@:#/+K
M9R_LEOEJH;L:KSHP$S$^/FN>"$,22024_ZNDK[.F.WG^!%_UD]0C84Z8$E%E
M_7)LNH/_#/C4>+5'SMW!"T \>5&$O57[7^&M?3<32HEE&V8A\?Z")H*5(F1^
M9O!9\-_\_J+X3:?;D(T,]D<A*7RJPX!0:3:<[N["\&ORJZCM%U78_P"65D@&
M9".30B(%K%U8_06C08;$OL/<6[&O%$9!P/#=K5!+ >L^K*-QS#!UCTB8P:$;
MR8A,,L>%9@I83\$J=/%38?VLG'=?>>Z4<,7(7, '%I/0%T6N6\!Z#"M7209F
M(Y5")@6L?\AWSS=UR"+?+6#]4+Z[+5WK@C7Q/)%@U.'S)]+?1EIV[.ZK:+K'
M,RO;PFQN_;=:#7<.#?TVC,F<=M#$34*YISGKP"A*J_9M&!*IH%;+W3AP_KA_
MV*:&6V(]W[HASS_.=-N#G*1W/R=!.-M"[F[A]F%A]WZ&\[@B^Z!R^S@-V6[^
M[VSI^U2%-$A'; 2[8WKKHUP7N2;,!E*3L[3#;4.3FQ%XH+5V?4A+'\[*3FOI
M0UU_ U!+ P04    " #1HP9=9 NN(8MF 0"3%Q  #    &9O<FTQ,"UQ+FAT
M;>R]:7?:3),P_-V_0N.9>R;7>>5$*XN3R\_!&#LD#A# V;YPA-2 $B$1+;;A
MU[_=6D" A(3< @EKSEQW,&BIKKVJJZL^_+_GJ4(\ MV0-?7?_Z/?4O]' %74
M)%D=__M_M5Z]V?R__W=U]F%BPLO@I:KQ[_G$-&>7[]X]/3V]?6+?:OKX'5VM
M5M\]HVO.G8LNGP.O8RB*?O?CRWU/G("I<"&KABFH(EC>I,CJG_#GHU^7EPYU
M15Z[%'WCO81]M_5H^*NTNL%_<>F=\^/:I6;@I;QSJ>E=*AL:Q]#E77 X5RQO
M> Z[ED8PPQ6"']?=^]7E9O#UJTO?F;J@&B--GPHF)"%Z$G]!,1=,R?>0"P.(
M:P^"?[\=:X^1SZE<L+3WG"WBK*\4_3P4C"7&);"!;N^=\ =XQPH^R[@8"\)L
M>?%(,(;V8]T?-B_6-048@5?;OZQ=+IGZA3F? 2,8</CS._0SNH>[H&C?:H$H
M!8,/?UA[A:A9JJG/@R]V?UR[P=#-;>CAEVL7]>_N>\NK3""JVE@1#..MJ$WM
MZZ@22YTCN02"='5&H/_[8,JF JX^O'/^/?LP!:9 H$=<@+^6_/CO>5U33:":
M%WVXY'-"=/[Z]]P$S^8[6WC?P;O>.8_\\%\7%\2M#!3IDN@!\SW1$J;@DGB6
MGM\3S1O[PX!BV,%#[S_,S5VMUH'_(,#@/V^>9',"_VW4;_XA+BYB/HME!VC1
M@_7%#KS%QG\0QSHWT12=X&Z^.@"00R'X\/]K4Z!*\#_S5A'&@Y&@&&"/)]&^
M)]4M74?/D0U14'X"06^HTHU@@H'S\WV/>OXB4XLO7__]=X\W5'QON-%$:[I\
M10?HLB;=PN^,P5=FCT<V?(]LJ)"5YG7X4%U0FJH$GC^#^8""2IQGN5*9C__8
M,C7X<?-C@-0+3<$G_WT+O][C=F;0:V_<;<2_O70-V?1F0 ]<;>RL#GZUQR,@
M!!-!!\: &=BVQWF&87^WQV-N$"0=]U'L%D O>G9UT+%T,.#\#YG!;_9"5 ^,
M$1<-*._3'G=S@R94*6.@#WCODW/W4)/FA&'.%?#O^0BJG4N"IF8FT9>G<($M
M\$1TM:F@DLX7)'R#+H^0=I/D1^\V239FBC"_)%1-!>@W^?D2:2J@0_5G_R%+
M$E"1+D1_P:M:4!QT673TW+/9!:-_SV]U;8IT M+U%&UJSN?2!52FA P5_JT@
MFA3Z/_:<4.$2X7N!?+FF!LZO;#WPX=W:6W"]E_._-TQIG%]=7- ,-%8I <'[
M@0C5*^=77YF4 "CY 0C40N=7*S44#L2M#I\(O1GW::Y#<=G1P0A U$H]4Q/_
M?!,4RS.'+J UHSW:! ZR.",CR8*OA0BR5-FY%DHM--K&I2HKT)3J\%%7'D#>
MZ_%!Q#MTWX:HA LB9(,OV^8$Z.T9T*$OJ(Z;,!Z8@GO-,,Y#R(E\IW!\,27N
MJ- %,YL?/KS8ZP)!D1= NA-DM:W>0)Y\A) ^@B:,271;EH)!Y1U0G4]!@+(5
M!COC"7,;H+Y6$Z&3J(-KRX 1@6$ HP7,]J@N&!/W%RDI?CD6/]BZ)@(@&0B(
MGJ" ]@A^ SG"G'<4035KJM2 ,,_0TI)#7<'*%371#@8@PH6A FXUW<.TC5Y#
M1M<GAK6*72/=R(\RM*>24=>F4TVU]=(N\)Q/+%1. _<1 ]^=7\!T"/1-L'F:
MRB#8?1T(AJ7/[7N=QX2!3V<0_)HDV;P$;;4@2TVU+LQD4U#"EH!=-%^P!.A4
MF##DNP=C0>D" ^B/P B#F\T0W$O4B]!5LA3HH4FVC8)/FNE@ E3#UO[(3H4M
M![O\KG&Q[5!X:KRN&>878$ZTG0H]D3PSV.4YA67L)R ,=@'!N*0]!(;!+C I
MD*8+3.@S :DAZ"IT[4+7@LV?3)/-$BL#!ILR6+G+ 6]'+G-](JAC^/>M(.OV
MLMNCI@J9R+2=PMJC("NNMX*\+.A6K;Q9E$Q$;]OI=B?2(BPV+9+%]<=W+UAL
M[D46\;"?&L870F0)%WOH;Q:;_LX2 O94_"QVQ1^&![@X((]5)P,GSOMH<\QY
M %RO_9=B[Y/5I-^6@Q@[7.X+SQU-MW\P35T>6B;"5%_K"'I$*)I,4V(+4?.
MCSTT9_4UX64_3<IA]]&SB)L]-"N'/8K/(D+VU+1<&BF[D6Q&Y6D3J4$.6_[V
MQ<#&UU%<.3- [ZE L!N=O0'?1[JQFX+D:$X<$?)'332N[^[L(9?X]E4P@AU?
M0DO8)10#^/O):@F[K+Y@"7M(;0F[U.) ?6+Y+6.77QO^+IA9NC@1#"#=6#JT
MYL[N?,#V,09A+F,79MQKB"_99>R2C6LM>\A(&;N,X"9(3%^S@CTBP;V0Y))?
MR6H.#[M^J*10@G*,E<;7(A5L6N2X*][/I:C@+8LX^*KWT+ 5;!KVN 2.J8>K
MIYD92JS1JJ>9;7ZQWL-?;)1EO.RG':O8O>0LXF8/'5K%[FIG$2'[:MHCI-"2
MJL$2=814\$MU5(G"7NZ2&.B]%$B)PFYT]@8\OG27J!0JX9.B.6F,5J*.E^=;
M*_G>;]>CA*\\!"/8^S$[_L+P%RQA#[;'5XR!$_6)!8#%+L7)$C OD0;\V]JX
MUK '7^'?=<5-B'@.3HG#+B"X%Y)<6KB#A85V8D P)K>*]O012&. 3A2A+VLC
M$^A=(*)3TO)(%@7/RQ6>\0O6P6II#K#<_<P3?["$2(I+WT/]X-]F/B*I8VHJ
M'KO*/7Y\^A)QQW>2- _XV%,?G& NXV4*XP3K3U^N40Y=<?02<2\=.D^"2Q;Q
MG2E/#/@>@E(Z=)XD#<?WB/50_#+MP^^=O\2W88D1[/V8'=]&)(8E[,'V^'<4
M<: ^L0!4LQ.>)Y8&_/LQN-:P#U]EI/0IG!#Q?(4RE9VL%6YI*5.YC":3"E:9
M.EC@=(#E[F6>RO@W4(ZP]/CJITP=+.PY *GC:JH3/%+W$G''WX DR_C83Q_0
M)U@X]2*%@;^]2Q81LJ=&H0]]:N\EXHZ_LTUB8/>310:[%[8WX'L("OYN.\G1
MG-CQQ=^>IF<*JB3H$ER,9(GF=T&'DFS.(8BZ)2B!G2*YX$Z1Y1)V#'M]["""
MAK)J:Q?HF&AC%?5 ;,)@W80."E(G-<, IN$UUH'ZZ!Y^+2N0F8$!?[.F0++;
M#3K-^QX%9;M3XGICSH&AFX.>"%0!1C<='3S*FF4H<QC]0%T&I!#RX"]?/3(&
MNG#AJ'T_:H(H:[H3ZVWYADN%'X86[.KX>&C97ASV" 7KXIP^O\Z5\"D KA'>
M>2#*5_ G(5)#CJV)#X46[&H<)UIB]CM-#SO88V"<V&FJT&*.Y0,*$;Y&FO99
M(:P2Y#9ENA;$/XHV/A1"\)X'Q(F0EF;*(FB/H/\$9O:8&'@97.94/I2UK>"/
M)U+0N?X?G.[%AMN^^%!8PGO6,'440:"DQO,,Q@B'PA#FOG@X,70M*PH*_YMJ
MXUF$SVR/4"]-)&EV2'8@!*54K7FOJ>,^U!@W8&BZK+!'PWZ:QE=::--MU8'O
M%I)-%64T*<'K-H]RQO&"WTTP&7P-NE\&YLZ^^!!,_.<(@KKV0]ZUD_"&C]EW
MLK&;^4"S4'1@F%W!!+TG8;;LDNCPK#_E@#2([^F!3$VS^)/Q6->[D81L:>H-
M4."C]3G\Y4G0I<0+3Z'M-XZ%;\.)MS7 "DAO_P<8_LD2+;#GR4V/(UUC9>>
M;]P1)$A+MT>N@*KC$$HP>,_&9W"%+/:<@6LHG.1A7WAV8;L&*M@RB.'K<T;*
M#3JU+8CQ%_,E@YB.#W&27!SZ;CGM"<&O([I"30,,^W<TB?#2L$=,PN<2]MS(
MRXF.7F&.%>,"@8:&PKU]-J1S]V<T!?#?<T.>SJ!S^V[YFK4G.Z\R-$MWWP0O
MLD=M7;IH<(88A4_M<.Y9W@7LP4;>E\NO9=?- CIA+P($3FZL-S^OST#:O'GY
MLG=!;W/?-;.=JBT0#%/0331IZFJU$N\YJ]\V[P+.=*JKU8I7[Y;\=WA?^]_N
M?>>B,A2]*\5;N:#8_*#4&4AJ7JU@7S[?_04K<O+%;^O(\7,.?N1X'GD>D<-[
M8]]2YAS?5JZ] =:!(C]WS>11\+;23,Y0PM7W[B\2A.1YILBB[ :"A"1/T5Z=
MIJZLF7\UOIUQXWKN_Z7V+!OG5T'W.$_^\"[PA3Y0WP7"FA/!*&B?/=H?7.YA
MR*:_>O('(N&U2'_! 1GC@/1T0.@<S]RX2)OQ"I>=>"4TU9I/Y/()D,L? +GT
MB2!W[T@[=>2&9M@:SR;054&IVW\"W7A=-L).6X;@X) F(H>ZK^"@[')0)A5\
M0$ZYX*"L<E"V\L5A+D+!0=GEH)SX046B+!N)LCQZ0 7O9)!W<N+[%+R30=[)
MB==3\$X&>2=;_L[& <+<I-)\N7(N[?VRW.49US82#KR5M'VZ.L>JIF=",4.W
MHP-7YAR="M94NV9T3;MLK?GD=HU"B!T^HN'TB1ZZ]M="_-VM"4Z? 7:N_]29
M8$>;A].EO)T_"UCRJ1,[HM?+Z1)\%3X$+?RUD#U^<Y33YX38N#A5YMB<<U_X
M^T>M$V0/2NS"W\^.OW]PXA?^?O;\_8,Q0>'O']_?/[C$%_Y^%OS]PROZPM_/
MC;]_*.;(Y>9'ZLCABLV/S 1#J6\#;A*[\(>SYP\?C D*?_CX_O#!);[PA[/@
M#Q]>T1?^<&[\X4,4 Q7Y[XRX?'S:_OU^4RM/G_!9=/D.Q@2%RW=\E^_@$E^X
M?%EP^0ZOZ N7+S<NWZ&8(Y<IT/20$W1BJ?",C^D9XSBBY&>6E(^W%94E6:HL
MR3/S%&%91L*R/#)1$=8=*:S+([,48>'1P\(\LTT15F8\K,PA<^4G+,T%<D/:
M_A3!;-'G)S:S%,%LQH+9/#%/$<QF-)C- Q,5P6Q&@MD\,$L1S&8NF,T3VQ3!
M;,Z"V>PQUUK+NF+S,#/Q5L(>=>D&Y^',4KC,6729<\)$A<N<!9<Y)\Q2N,S9
M<IESQC:%RYPGESD?S)73_9^L(C>D=7\1CQQ9$K/7JS^<68IX)*/Q2!Z8J(A'
M,A*/Y(%9BG@D<_%(GMBFB$=R%H]DB+E"ALD7CO+Q3L*E/C>^*'3*6*'3,8E?
M1#D9B7*.P01%E'+\9@@'E_@BRLA",X3#*_HB2LAVE'!(YB@2X]GQ]P\PW*]P
M^;+N\AV,"0J7[_@NW\$EOG#YLN#R'5[1%RY?;ER^])AC;?^ 77WR3$$=7BN/
M%<$P:H8!S)H(\6C8!O+^OIY__KBV#*@!X.)6Z_(9A1B+/_). ;OO3H'_'OP[
M!07S9)9YUK6)GPW2RRX8NCGX(JORU)KFE]IP$9==01T#A[;HS[4UG6H68(V(
MPO/I$=&_IM= Q)X(5 $^J:.#1UFS#&7>!3--ASY/SND*#,_+6U$W:K&O@>!=
MN'2$IO:H Y^G=^RG=H&(;!*D@2C8%DOZ#8TU6N()<D$B#)P<:P2U%=K( "#1
M$(8*Z#E+JHW'.AC;V+D&(TT'=E34AB^'WZEC]ZK\,LQ6>.BY<N[*MA(%+\#/
MT2*$A.V74C]KOL&$OEA!%T33=I9/( =U*\CZ-T&QP/7\7A:&LH+2#W8TL!XB
M;*ZY8)>]V,7#K7P*B>I]>&9KX07CQ.J;<RL_ PEZ R+P,)ECQD$^3D?7)$LT
MVWH/Z(]P63Y>"5WK,7DEDRTJ@@]H%+QR_ QG5FJAHPQ2P2N%#=IUCK?@E:SP
M2L)CR4?R5US4]@0ESQYN!)-L+[+P4&)Y* 5W%#Y)N$]2<$?AA81[(05W%'Y'
MD-^A6=!/FP_J[;RRPS*K?P>TL2[,)K(H* Y/N(N[K+<+!R/"P2C8(&UMD M/
MHF"#M+5!+ER&@@W2U@9Y\@T>>B?,!@^]PC>(YQL4;%#X!@4;%+Y!P08I:X-<
M^ 9.5LFNA,MW.FD'.]@Y)=\2"T\AUC9%P12%WU!HBL*+B-Z4*)BB\"FV-$47
M& ZA\MR')&*C:FN-A6L1R[4H>*/P,,(\C((W"D<CS-$H>*/P-\+\#=3\#>CB
M*;/&YA(+;R.6MU%P1N%KA!U(+#BC\#0*G7%TG9$A/V/9DX-FT(A(?Q.66TT'
MHF#DN(?"6JK+6]9V Y;UA1Z2,=9Z:]@46*(">]N5<D'B(Y.XG#:)*P6)CTSB
M2MHDWIY](TB@)4SS?#YBV5M"5F43W,N/0&JJ$&]C>:@ I_'(]?R+\%O3?9TF
M5@-PUA%P-/5]V)$G/6UD/@DZJ*G2/71T5./5,8#MU86BX96P04LSX;+;HYHH
M@AE\E0@,UP>^ 88\5@V(&(A*H"A -"U!@3_"EYOSU\@K+\/5*V$H[P3\M2#^
M4;3Q:^230!2<*OEYUV4L_(EL^1-\VHZD1_C"G\BR/W%H-BC\B1/W)P[-4(4_
MD2E_(G7R;X:IU@PN#^@0:TA H B,=2''3=I]7 #7(PM*$V)0M]"#_%9DQZI/
MU9'<@_"^IL[V/)N.<"H6)"V>V <,/U*A,ZL:4/7 "Z!V\O^RV3UZDQ"GRJ;\
M!57ULRE094WO ='2@52'_\GFK2#:76U=7CV) 2'+D9%K*_1S9Q0>L+!H1N>4
MN#R1-:;+^T"3##-=!N:JI,=TJV*/ZK+88R_V*YCMT 4AU00%(=54"T+V5EF>
M3^=>TWX$NBJ/)Z;K%:GC+@2PIXUR?'(J(PK- ^,&#,U-5W,Y-20>%4Y.][G<
MRQ7<6W!O6MS+I>\NKJ?F"WM];'M]D Q:5/EVP0='YX,,EWB'I.$*GCDVSQPR
MN\6B%S"KW7RT_:0#P[3MYI,P.\7TP@U$UZ-@VE/0/7>B*QM_UEV*8$R<<H+!
MY85L,-NI)% SR6P92*&FSFQ.DH0M[%H6[9I+G+2ISQ74SR[UN;0SV5S!!QGD
M@X!,]I(3XF>R5_>D<N@U(?<46<$B*YAW[N>6W,\5NC/+NI-+P#U<:MP3<MHP
M.+#),Z>D&M#E+8L4FH$NZ']L^N<N\XR.8\MCM6[I.E#%>4M3;X "T:S/X2]/
M@BZ=P/F2W<SCS):-B8:3TR7!7+$I2!L#=]=:[#HX,^W:^E?!*Q'(P>)H.UZ0
MUTVA/;H6%%2.W)L 8-YKHH!*A3<; 6\3HN#6M?BP)HJZ!:1[61@B5U(^A;-S
MN>-7#_ P8KP2GHUK<%ZWJL5FE@N=>RS^?>7*-Z,<_.JT<%2CWE C65.E(D;:
M[4?L@:)CQN(Y:@Y<<.-I<V-6&Q+OUHV-YQEJM=$"T+3<@!'047)>,^!?RSV>
M5\5ZL?%1:+V]M%[!9WGCLZSJL^ *_<*ZGK9US=:^2U13]X(;3YL;L]5(/BXW
M%C8XAS8X>WP6$%.X,[X[M3QR3LP9WYU:X?)'N/P%&Z2M#7+AD1=LD+8VR(4K
M7+!!VMH@0[Y!\(YB3;&@4S^2Q7L@]6J]C>W#T^I!&-+\S^=W!F(#RR9AT8 P
M07./@CD+YHS-G ?OWFM:DJS5'N%+Y((Y [%1,.>Q-&?!G 5S9E9S=G39F IW
MJ!/\_7W]E?-F$#(*UCR6WBQ8LV#-C&I-N_+YE7.D#P<%(QY+1Q:,6#!B)C3B
M-UE"PXY525:U5\Z/VZ@HV/)8^K%@RX(M,](K.;BRO ARBB!G%Y/FLK*E8.V"
MM?=D[;Q4ZQ2L7;#VGJR=EPJD@K4+UMZ3M;-5517E:Q<E+$4)R\EZVP5S%\Q]
MLOYVP=P%<Y^LQUTP=\'<)^MS%\6/1?'CR?K<!7,7S'VR/G?!W 5SGZS/73!W
MP=RGZW,+"C#ZFET7Z4/BLK7MZ^7S",04+)];3[Q@^8+E7YE_7K!\P?*OS&LO
M6+Y@^=?ER]]:JB2($+U](*K:&%4BO0:&#EUVX0_'<@X*MLD.VV32P :'407;
M9(1M,AF*A/IE!=MDAVURY-O4&^V:*M7;;==[7WKYJBE\$719N $*_/=4\_.H
M:69?-A70'C5527Z4)<MKF&FSUP9Z#N'#KX44(50H8HF\.H6%O!7REGMYRY$W
M7<A;(6_YEK=\A2&%O!7REGMYRU#\MFRILU$ZI>G3FC[5++VG*9:-WN7AV+S*
M30]"(5E(=!I_+1GQ@3G1I*;Z" P3/7'[6P!:PA2L%5'MP,LA.6JMK\UA9Z*?
M'&_L4T.7/?*GW6V+KEY0D,78\&Y;>:0YT@?M)Q7HQD2>O:R!5BID];"> EE=
M#XM"[;"HRO)3M2#P@1T!EP)[.0(NK=)S! IF.(82WR!K*M).73"5U:>"P(>7
M=H3W?:7=?T\JTEXPPS&DW4]6_!Z[\X)R0=8CD+6<GA(/W?0I"/R:]R9"]]X+
MMGC-6\2A6U8%6Q0[*P5;%!L V$8]E"HEABM57CF[8$@U9W@+*R_S'6Q>K' %
M+[X.7CST")Q?VD@71 V^I5?+KY&,O^.UO=Y7HG0*0I^P1+,7]#+G^=6"2 &Z
M,N]"#.6?TK4G09?Z\YF_:B%@B<>38H3[@Q&WIJJ6H%P+AGP"AU6"2+NUP),C
M;&CNT_,!^SH0#$N?]TQ-_%/7IE--S3^M>R84U551$ES63%/AG\:Z'Q:Z]B)#
MNIMYH*\]^"*K\M2:KA>2WH*A#M7EO/\$43!OR..)V9]HEB&H4G\B(_,YT4&.
M[00*,KJ".G:5"/IS#0]80@N[VL[CX)X(5 $%,+Y#=7L@N>#DA)P,<:A9XTG_
M25OB=H7N@H%?Q, Q</N*^=9298=I'WHWFRPVM0T6N)(-C6/H\B6\Q'N4]]/:
M\]&S@A_>FP@Z,,*>[R[>OB;A"R!HG>"7V(7WVPA%=[:L*= %4]MFN/AKWP0O
MX)F^-]X 59O*:L0[(_&Q^=* QWH_^Y<?C<8.?,5N*LW@QZ1,X A/V/.=JEWG
MFH1O:$+^'F^KRK4WN-?$>L.'=_+S)22"9NDB,. W]A<3($A(.7QX!Y%[=79V
M]F%&&.9<@:IV!"7LDJ"IF4GTH88RB!9X(KK:5%!)YPN2Z$'!'+TGIH(^EM5+
M EVZ_.\]@>3S0E#D,?P)JC(3+>9__YLN4>\_O)O!=WWXKXL+XE8&BG1)="T%
M7'2$,2 N+JX^0%@\*)QG7YC:S'Z^][*+H69"8^-^]R1+Y@3!2OWG?.WNH:;#
MY3EW7RN"^(?@(&R&ILC2>P(M\,*0%P#>B9[B7NP]V;F>]JY?P8XPY?ZO;P7O
MUI:0.B)=%*;\$F,FJ/XW7(R$J:S,+Z/>X4<M?/X*=^B!.8*]@F#_,+QZ:#7[
MC9NS7K_6;_0^O!M>Y78EO4;]H=OL-QN]LUKKAFC\J'^LM>X:1+W]Y4NSUVNV
M6[E<'N<N[[M@3&1U;&HJ>7;SMOZ68"B>J^9R2:<@-[?M[I<SYXG(ICU+SX,J
MQ0V !.2+BQM-M)"!1*FE@8B\08JFZ,' _E2"(<9B#F;?^M;/ZQ++P\=!<Z5J
MJNV4R"+A.H!=,-H,4DQMY5F>.T&,()J4'2*<$ZJ X@@(P*7__>=7-'7QU3:)
MJW>L>*9@G\/##MGGS9=:]_-9N]7XY[1(8 I#!<!W*0K\5H3ZZM]SR*GH[YD@
M2=[?>Z_/YP8MO1E14Q1A9D!PO$^V1_G!U/=__B/035D4% ]9T*URW=,/II08
M7.HMP\LJ9L[9U#F5#9VSVIH ,TTW@]6/-A2NVS5ZSO^6$JN?D:9/!?/?<_G9
MO!QJF@($U=0ML*&72D%Z:0-&Q$K5,E=Z'T=+F5)BPF"FQ->'6K??Z-[_M.'I
M-CKM;I_H/'1[#[56G^BW">B1]*';0= LT>X2-/]&^H=HWQ+]CPUBY:RL')5:
MO8]^IJLLM[EB^#^Z$^K8 G:5;R61%]B1F=?T,W,"B+\>QQ).RH8 J@0D8E,8
M&QO"V+$O;CC)GV!1;'9JOZJCS]][UQP64910C@W>-Y&$^1P(.E W)+(<))%K
M@)Y??;)40+ 4N;7 VXT%WLH&5)L_X7MNX3=&\!)[4OV;\OC]T^_G$AYGIQ*T
MA U0SNTL7*A&>07N4&&+#VV+-Z7#+@R145W(+F/\U*@U?ORLC)IE!:<Q'@F*
ML6F-JX%1P@:4KCGF<F:.^]U:J]=$!K>PQR=OC\TESWH&>02E ^J*TU+A>8$=
M4@;52L@&VNP[&\G0[J@6VIR[)-9>8D,A 5'3!42[2\*";I2NR"HXWU*F-5>9
M-NQMNUOXS);E[,8&*=&/[(+[^%2J4+R(Q<=@*+^JW(0!;<O2%RS/L>$>Q@EZ
M%#F O1)BFDMKW-0%8]E .L1$[8B".4IHZR;[O<D(U>2.^1I'T=L<M0['^56_
M46^U[^YKO=[9Q_;]3;-UUR.:K?K;D_-7WS2>(5K.T*H);42L\$ (!M&; 1'5
M-TB$K!)-TR#J$SOZ^B>?:RU\\PAPN>I_#F"@-C4"OZ81FBHT2C/7+MF%*G7-
M4DU]7M>D$ 71DG[]U/NUGR43B]]^80 1U9:88*9KCTA3;(;N#+.M07;"?7YU
MJVBZ+ DI>_)+2C*I$W)#F'  ?1SVJZZQ7U]X;KIE7:)-REV^SNQ>E'Y6FW][
M $\^A6&W^2H$H/.K:N6"9LHTS5 QF6H9*QU=X4!DY<5FO+%%V5=\%/U_FDYH
M:)(5\=O294.2[?,H?JMC8RTO"-!&-KRR7[W92]3'@BHO[+_]_L +54%>E%:>
M6+CYMONV]W8O'FY,9XHV1W5?.67;=9UIP][2WFXQ:I$_.E*68M,*LVM6N"9)
M.C ,]Y][605TL 4N3RV*_SQDFRS 8X&Y;0L< ,SY%<OSU%GK._19S G1,W4
MS! S[.[=;*V8#EIQ'7YLZWWM20U>+VA_K_7NC:K0JN!9+Q^ZWA4HYU=?9$CI
MW0F6L&7>!"W3-JIMO0/]:VA80MQZJ]WY/?UU/S<ZR4MS]G/K2Z'(V  XRI_?
MVJZ[#L)"!YU)57[)L_#0AI'9[I1E'BB#Q4/O<N@2UZ"!#,[2').,Y)5 SG:B
MH>!EWH_!<'S7[/6_"]A(+3HO#"1T)9SKG;O.KQYZM2*CF#W8/=-Q57L$*A3
ML[JLBY;Z*"B"3@@HX4),38.0 *$(Q#=9(#AJ@UNO!5V7->)>, @DQ/#MZ!M!
M_6O)BB)L7%S7%&TZE(7<T_R-R]]GVHB8Z5"'R3-!(< S$"U3?D2Y/^@K >.$
M,GMY@7W)T6$.@JN24&I6"W$+ZN:4EN?JO/DI>1G9FH)<VY]> ^#\ZO^C0Q3C
M5ADNY:T Z5<=".%VKGGSXY<I/OQB'JI8%L"N[1KYWP\M&\7'-=M>&=&])@I*
M9Z*I.[>^GCL&&"_NO_Y<X*DE9M<V*C9A.+\JL16"I_DP<N1?9S4-PP+Z__YW
MA:'+[XTS$RA@AA#@[FD6RBH"]M^6 6/@.4[@>]!@Z#(:S7ZFVWM%0 <2,;-T
MPT*;1J8&[[037@3-O!G^@_:44)E 330O<[KBU[9KM/N,FH.@O9;#5C;2^@H8
MF3@I9$^-LI<!N0T(XH00T3!;/'L3+D&7^*!]IP&SL,N"G5P,E3:Y= %AU%Y(
M;SX=:LH;G]]9$"M3LH4* ]9$"SR+$]2C@( J_FDBPV]6=B";NTWI(BAL-]LU
ME'.:&=KZ*=AE7#Q_URA =SXFSWNL>8QK&].;()Q?M74H'H(^=V3//3&_VWE\
M%;LYAV41+R7J*D)'!X:4)/]\G"P>^7)WAB??RZ[M,*\!X/3_*-CAX.Q ;6B,
MAJMAPROB9'7XXYG_\:M52QXM;Z9+D5X/RI6R7)!*\<,(&6?BV B$@Y^:_H>P
MFW81WD4Q>*K8ASM*;(,&K8JHOF$X)\0)@#2#</R!=AW8!0PH<M-7%8%OZ'^(
MB6 0J*Q8(@1%@3^B<PH&_/>O):- $,9_0^!> )^YC 595#+@%/J[$:'''"@T
M1-^AZOXS"3*7.K9_G^E !$@[P4"2L,]1&<0;^!#(MX1A0;?#F&BH%M$K.S<G
M@KD)\).P#II=#VW?[ +^#TD(JD2\89R%#2'WP]^'OR'89_!Z^U)X$X+"?0XZ
MIV'#8,,H&"91I0A)F!MO<\H"A^-?'7602E.1,FO[3G5+UR&QG*,TR,J9@AEV
M,(Y1K79]\C#K?IO@,;,!VZK!\)Q?_0SUP<[<T[A$2R.6)X$*)LNVDD1Z!*J0
MJ6R:4.D !:H275-1,*/,"0 #FSF!>BKIJ$WQ(R!N!%,@T'F&31VZ>H8_N88Z
M )UQ%._6:EN*7=Y"]"[ZQ!N$Y/)[@F&9M^X5YD0V(,C"#-5L$WB5Z]FF<G4
M7NI,8/Q3J,2CJ\3*1FWUDO$0W[D:*5@E<C=_1N.?WQZG<TPJ,:"X(AB>0B5F
M'O@8*M%WD@0J(8%0(*" $$01JD0==6RWE82.'+# ;PE(_(O 'XPIU*7P+;IG
M2<]$;0I7-B>1DPD?!YTTA)0Q,=:U)W-"N#^_A<L!A 1&LNH<6(0:$NTM,=3[
M$.#L7^GWI'?9-CCN%=X%+FAG2]"\=WO7(6_3O38$2N]*6;65/530PPLFR&E^
M6VRHY&-#96]P>;O'8&HVH;%UGE.O0Y8>:V'565^^WY6I27^J/6#IC.&D&^R7
MVT(DNB_?RCP$U*JM07M^=8_DUL;WEFB&;?$O.]Q@/+B"F6"UU5ILT.SU;)F[
M3.78L6XYK"O^W2C( L ]5^LC4+8T_U9-R?IQ:OO>:\N056"$!*?:XJ%N:;K^
M^7?R$]7QVE*P 761:P!&=Z0X=>;$>H($&U0-UY>P85GW)[;X;_T MG?GG7U3
MW;DGF ^[AC7JW3]\_?B,M5=9$!]6M_DP$-!$_)ARBKF(%39BA=%9N$].0C_7
M"26(]5!"'@4E5NQT"K3PJF9G0RP#V%?!!3AMP *ZD<"0 +U+F2/Q>)+AJY%0
MJ!!\#840C[)A>PRJH(JRH" _ E4[(DC1G!=)T"6#0 <&9"FLSHE](P1FM=\6
M$6JF(U1](T(U)C#<6*K--X+AQ(I.]X/=L5B1ZCI\JNLG,,Y< 4/9H-T'RGJ(
MMIYUDX:WP1;N^_S[KZJA7'\IE5.V<%Q 5QL_C-&=. MV.S3P-?OP1,T:PT<3
M+$D@JI-(%>B >$+_LSOYZLRPLG?&G<J;MF7:)@;:FH'<=#FR AEW\5,<-X2[
MKPNANJKZN-6=P8;;^TH[GGN^QK:UY2"YR@7%;C DO<ZZJC65-%,"H@S]_W/"
M_6#\>]YLW9X3:.*#_4AOB C'D6R)(TOTL@V3!^\R\-;<VB/"F=1!$O^SNQ/#
M/53.< D=0?\F*!;H -U^6;#DWGR_*]<8N4I]$:(Q%O+D\T1Y;8Y)A#C_!!;J
M+6H)&(JXF: 3CPA0Y-,XV",);47DPO8< ?AUL(\Q9F2C;#1RS,AR+$E&QHP<
MB*-\"T-+>@]O_FL!540WV>NSP_=M3(?6Z&Z0K61SPRI_[<]7;^:SU]^PG8C>
M2%AO,]TJE1*0( FL6EOE)=98R\.4%Q=[0;$[I&<+)SH0_EP, 51T$)B9C4<_
M/SM(F*VSNDU]_SP>_\/]_)8"JZ4GZGFI2_LP7&(^K^>_4"_9T#Y\>5U4SH^J
MVN-6T" 3 GZR._9V&MUF^X9HM&X:-\2GAU;#[E?N]/PNB'0<J:E=WS?.VK=$
MO=WJ-UK]?,Z3.JW-XI?L"P<:^V4_=<SMU'&6T0=NXQSQP-4P^8&KS:4XCUPG
M0]K"@!PE;%ML0XB*L:Y9JH2X7-,OB?^NUQN-VUL?I\(?T-O^/6<2R%/*Q/\@
M$!,=A=+_+0Q@^(RPHYM$\RUT*[UD?E-U(G.[_YZ Z1!+&",<^G +9N(_3603
M8%92KU0MK7,F<W[5-,&4H/V<N9S ;!!O'E3!DB#RI7_RSJ3L0953ULB>6PYE
MSZ_JFBH!%6V%PD^V;;0KJ:X%!3(L('H3 $RC8,]"?1Z<.;E0YO3I4&U$M&?
M:4YKV$6V;7N;%^VFZ6 ";T9G+5"+[BG(.Q=SA9+-(Q_S,?FX+A@3U)CN*??J
MEB_4;?[8M!233>V]RXFFP.C:<!MT$8V_EFS.\\ZVI4*_YI%QRZAPW(0/,#4B
MA(.#PJ^\<VNY4+)YX-4T03V1!%2A&U/1C;.9DQVU<U#,6^*+H IC6_=Y?36)
M&]D0+7MBH!TZU51!F1NR;>97*A/I5*>R&EW3!8:E; 9>>=>E=+50IGE@[D*9
M%LKTB,K42^BS;XFOZ#"(#)U)E%Y">A%^H7A_([6J:(:%6LP+0\TRH>[5_P"3
MZ,K&G[SK2H8I=&4>>+?0E86N/**N9%U=R;U%#J2I:XJ3GN_HF@@DR^X_FG-%
M6.PJY8(Q"T680!'FH_['UC2<5P#4?.MN_A75/X6B.3Y?\JORGWLP%A3']-G-
M]_)O^XJ]Z)PP96']UIY?,%4*FJZT2C(_J+[A0#U! 7:FV-D?)E8CA.Q0X,%
MT^<\M5CHQ$(GG@"HA4[,"Z72U8EE5R?R)QB4,&D6>!6:+B>@YE#3%0'P(55@
MQ56!I;=$XWDB#^7\%UT=6//E* M7/;_JP=<(YDFD]H-+04^C?^2.OBC,>Z(]
MLRMZ+M%+W$:'[PF[6Q+\^56U3=EFL<TN/3Y,>CA\3_3G,_C^FBX,9?$]@<9D
M.7AN:0A[S%K_$^\NNV/0R;9D.7!+IMR G>\V6$-?>WGW'+:[E$ZMVS]K$I"G
MFJU:J]ZLW1/-%FH?4NLWVZU#=:0H"!9!,&9),.2EG86=4D;T\IU4/DC/N:*O
MRV9?%R"JVAC-MC[[J"GV%A(ZU/C6SJ/VK*$A2[*@R\CSRFN_ERW^9)?\N3S5
M<;;SC'*.5_ZFJ9Z9$\TR(#WAE>!9!,B!0D>M;!(O^S\2<.G"/_E>J[_M05[7
MD6M]$M)3:9<G[O5J9:GZ@*;IP4QE57:P,%I5_D;5;K_\^@V]=6L*US.W+[Q<
MF1#H",1J,N#OAY$@W(T7)&PV<0J.+U<A^%J_Q/4 ]N()H,[6Z![%UUK3'^[Z
MXW</@UR5\K6O_5PO_2Z+/ZG[FG*^*_ (>.$G2P6HX]I^L.%:1 ,M@J<9EAXL
M!/KI?CS\;/2>ROLNX@:(8#J$VHVE]UW(=O(EBIC>=2ZC+T-2VB_1ZS $7!JX
MCBC$Q8R58V+-Z;'W8DCSL$X>QSI]K++D8*C(@&5<C 5A=G%1,PRH@6I#-!5
M- ?R]6#QVUQH?Q2ILN@*Y[L9+"B7IX^';QB*(QFV0C(\_\\V$\9$0:W7:Z V
M?@X2 O$?\$ GF1%,ZH#>_-$7!CTP0\ $$IC9(K [9W)%9XJ&E/ZQD+Z;H#X<
M/B0@]/?P[8,U2@8EFUQP",$&[C*#>,T4,(%$KOF(C#IHU%0)_8,J3AX%!46P
M-;,NZ#J: F.G,2'1F>9@*M3JBTH=NC#"G3;^"1Y:O[EA*G+N.A\EE* ,8 '4
M] -Y^"+Z %90;Z+&?0SSGV =O'X5'?BN_PEY)EW:N-R;V!'83=_%]F4L9(>-
M(=CNIL]3,;OI7["03) V$!1VO:W^^56%(BLT%]!//WC=@5@*YLP30C]_03,7
M++V!_KA3(':A'SK89#5PGD%"_$?:[1Z:5MT'^K2I/@+#M#-6FP(.5?_,^G+[
M6[HNOUR_7_E>E+**W$W_H)7O(6TL!G*S)%<*FOJ1"0.#"7O!PL)AP1[-4R_$
M7J!\E/QNCS/4S.C", OJ"!CIMX#I3?_>D)/1>$K7&-VLR5+J#J^SE+XN2, ;
MO(9FRGM DH0*S*,RR"[$[2%F)0R,PE3*^16TO?$8+'!E''ADJR3'5=(0.;])
MLJO]5LLU-@5NLKRR"Q24!D.'E^9]-+_0 <BXGOM_J3W+QF 0>-,7.W7B$V'Q
MA\9>WUR7JLP(7RBSC8\;"Q C79M"B;6!08.*3'OSX8B<%H[W7?+J(7:PC=<-
M%JSB8$&2*O/Y%.0]T>N*<6STEG"X_Q"]%).&?)=]\HT\!M74]#G$P*8)E91?
M-^/VQ[OI7PZK";WR7GIL(?,O/KX9+,6=E+:3N&6:Y*LYE9Y(O 6:O1(.+YVA
M69)GHH/B%WJ:]B%_^.COLCFI6P9D<:#;2;=PA_-SM5VMW3"WI8^E-*V5!YF;
M9B/L[E?T>T)TLV_VV'94E']$_HB!O3W$C<?!-E6R'".4SZ2T)<5FL!#B\.%9
MFJQ0U;1-DVVCUS+=FR+7^#,=_9I4?HHHWY-"C!>X.;.]*N=$C+B6_HZQS[,S
M][;/EM,N;MOG.?$]IS6J["'*%0S,Q_,D58GVBV+2+O;^X4E3*UA5X(@12@Q9
MCF&N$U K4'_<A&V2(=711[JCOE#OS<'4]'3(%Y[Y-K^[F9NSWP?>+^MKIJ!$
MJ(V8>];[O'8K<1]Q5[S$2#*%4,:1IR^S%$E7H\U1+.R\J+8D!V0(E/0RCHBF
MQ$//G(].2.U-AD!!KVP)>DM3Q< -\3^:*O'WOZD;14G%2XBUH'L-:C<3Z--B
M>QQ3#41'UV:0BO..(D"2JQ+:-YRAK0]_)J.UN*'[D 4^L18C5XR?*H9-LW#X
M/9!(8H: LG?"@0?6"W8!MG3%WHIA%[+V4-<X$M<\= EHYJ6)K1R@,%C5XG"!
MN7*)I/E4 K#([;:5FMT4LD_J,_=[J-]15>9 .VY(J1*.4MW>=<O>1M$*=?%%
MKH(CDPS#]4HYG\F/)(@,%+P*EI(0$CJ;:8B=O^[K!HP 7)SDC/GJ"\^N?Q-@
MUFXUQM)IJO>#3W6#S 6(D&V("%-X/G+B/AQ%>T@6EJ(1YJ5:.!\8#!8I'(4C
M--3V+]5-@2+%QDSGAQNT7H]_&EE_ALK#H4I(PI+[$#47+I"9344GLFYX*DI(
M+D:99";%\ 4(#19)+*4E%,E3+ZW0"91);FWGV134L0PM^E+U-)Y%Q4)YP#M-
MDYYD1=F42/'VMU!JCW[.^DE<S-@&;P7:1EKN2+NMT8C:0^1P9'5IEJQ0+ZT]
MRALZ P6NBL4_9\AJ.N&<OY0K3*B^W?#5Y\^WUDC&>V3@RGOA4<F]OX14<61#
M68JD7DS2+*(L6 JP^-(X4!897:&<05B)O2L0T^G-G^O*)[HW3[7NT&TC.P7F
M1$.QE0?/46D?@)X]) ='J0;/DR4^I_7!<;$7+$0XG&&^3'(<FX804<&E&>'A
MTWQTQW?GW?M&_\_QJS.4C?V7U[#CGR0BJ^+(3T,>I*-C^J)"8S]Z!2L-+$4:
M9)F)+H[#5:/![=BZW2[3<)7)A.Y+'T?LC?A%Q&>3XQV^#Z_=2*!48K<AB,EO
M+RAJ>.&C]RA(2*"(: I'OKY4K9*E:L)BL1>@MB!\8HU&4UB*4:@266$3UIWA
MJ5 I;ZDY5(^"E)OI*+>%,A5;?W[^IIXFZ12FO%2]95NI;>WH'XZM]]!B>+9(
M.*9*5JH)3?0)Z+&LT3I8<>&(?FF2*5$D>S";%:BZ:'^^1!:&LF*/N:FI4L_4
MQ#\3^%R@&T[^8JW+T.B[S,[HR;,R3!+R)2NF]3K*W3=KU\W[9K_9Z!&UU@W1
M^UCK-CZV[V\:W9X[(IYH?'UH]G]FL-HM4\!$9I)]/!'<@^A^^JW???YR^UG
M>W)PKY)+KQ^1LH*VJ+I,0GI^K3AEN'D [KZ^J/?XP:(VN>[)]*?9T]]JFFE3
MN]F%$W5)$!BGW=#ZX3<TAVL5FZ&KCE4TZ$-7?*>!QI%-1Q6"A\ZBIH^O0,-+
MXW"R.":5*I3K@'K*CC!'A6S0G,)O= M(V_IT4[9^=)_T^J-<;R_2"14"0H#U
M;B8S!V9;V@0':@(\SU ;U./NCN^!U#TD$$<JGBY7R J?T\*4EZ(U6%!Q5*?0
M3)EDF%0:GUQO;G&$"68:74\\4>^R5'/.<#.SE*H915U/3"U[/4_V$]NX'3EH
M&D>>',IS7ELV[(/;/;N=T R6&AB*K%1>>D(_4*IO_>ZK_"A+0)4\O19B;LME
ML/@[F?Z:J.G$+P'BZ 'F6=KC5@<'HRF^ 66P)'')4E[["^V#P$!3R>") 5(Z
MKE")J*WV%,T\1+[^WAK?OI;_ED0NB3N[?Z\4+P4PSTV[E$T,[B%Z6-*099:L
M,#D5OL3X#)9$++$ A[KUI=+-JW$@I[6EJ?HNOU51R^P=D)K*;W#\<A]Q._=W
MVA4D"=WF0*)N\#^.BB :437:%!4E02_UU>,0%$<HQ)=)BHT.PG'5#/$[=Q]\
M54-"XWHP-3V=I,WHW]+WV;W0P1A+)VCNLD,-Y:6UR$O2:2R.6AZVRI E/MHE
M>05M7EZ2@V.QG&[@:;+,16\OX-F.+@4+?VC#EY^-[N=F[[%=+B?IQ(B]X4NQ
M_XBQ\GSKW+*?(58GY.];B_FH.ECT&]W60U_K4T*2L4?'."&/8P]M)XKV4-M8
M#I-62/K%>;U\(#%8W^)PGQF&Y*A4FM[6XF9RML]Y>#)FM!8EIOWXJ_2]<NAC
M\MMYG2R?E _ 97QAY/ T@J&X4TSJ)*DSYO TA*E64MF*Y ..+*+BB' Q''^O
MTC?<E[OV>)SR"8E=SHZ_V.;D O-@0NPAPW@ZH%>1LBQR*;A)%JPEL!1PEVF2
MB3'+ 5>V)#)@VDZ8N$J$Z=4G]^;--Z&:I%%B^D<2E*"H*A8:7]7IFT"B[Z&G
ML+3EX2HD5SK4$9R"^DFH'ZSRL%1I57F2KQ[U %:(%O2=PK)UGW!?ZS46=Y_-
MP4*VK(_?6Q]'\\\8MZ7WT6XGE2;>0]]@.<3,T21-%VW 8Q A4.RQC*SEN3+)
M<M$;?7@DW!\D[3J99&>%C>K$:$X:W-?%$;/"Q:&DU,9E=W0W96=SPMIP[%ZC
MV:DM?MU"+GCN,<#B[^=6DB*%S>FYRU<2QD30@4$2__/!F GJ$L+J#@@[@M[6
M>R;:JK6![0"]AYXRD)N#F2P-1*0MJ1)+#1;WGWX\LUVKJMU.S@E3-A'4V^^>
M"3KQ:,])OMJ$HOHB*'B:8>G!XE.#_O9PT_K.H,Y0L:"(Z*<=!X[X1H2/FVAM
MMF[7U5;'?I.1(L"!"C?VD,!P@*FWZ$$!VG;K"\00WC\K&I'$)J?<A'**\\Z:
M94XT75X *8!/'_G/C>;')\#=CW=PB/,O(2R?M,VO7"(H7#XU&?'SI[H*ICR_
M)Q1[D'\3COA\&GM\X#K9D_!H+""#>3-NVB,82)J$#T'_[<V:6V399M'K".9H
M&H85R)Z___[5I5_&(Z/&8$_9?LHV:S(1;V];IF$**@IJ D!0V_?L\_?ZIV]3
M+AH$;?6H;3@:>V/!%0]U(3>J=W?W?;F4' M1 AJ"!1>$YL*J/"ERXZLUW!<+
M>W._@X<]Q#-N[@.7>/I0M0>4R8Q=<BAWH#%0@923&;?TT!@,Y<MT<2SUMI\"
M#%:'CAC:AR]]XD ()O')4@'!4B2!.(6TK[@!HEWU1["T_35/P$?, 'S;(U#F
M*6ZHVSK"_5V2C9DBS"_1ABQP,SHC82HK\*N^/(5K:H$GHJM-!95TOB")'M#E
MD7NM 77_)4%3JWT'YW]M4&/\WQHP%P80+^3GBXDL20 "#'48(S\/=05ZC?SY
MU86+;0\C+@6.7J#@7\(&4MX3B1&\\>!=N"FM<$/L@N9\$W4),!A9^5/7IE--
MW1G<":/.#ZUA5%2\#2>OVCH4-T&?AX=YY6! ]XCQ%J-AIW$M-'[.Y:5-W'KO
MCA#O.CD$KE7^+CSVJ+M?W$^)C0=!Q'Y]) SQS5WLP5-)8[NDT 9;E;CIS$,&
M=J5@_H@1U5G?QG>34N/IS[ :SA<Q@KK:_A"XG'G?[O=^\7>WWZNE_2"(2_/D
MT5SLL4))_)Q](0SDQMAS;D)".2>02RN8J^YBBM!([E:V)J6F]@!^5"(98AG"
M[(?J?>.&2MQC=\%HYDHD6ZF25&!1=8 OZ+AZ>PGY[LBT?_MM2E>XZZ8$(E&Z
M1TBV"XH]D)M,_R^1RY%LB2/+="1R=WG7[Q'*MSF8W8^#797&JU_^4-___GD"
MT2H-/P<'*XID9FN#@^F7<?!.([$[JR!IG_3[8>?^RW1X5 X.1&[U978"<G"9
M+9-E9E\.W@H&CUS$N>[#[^$!XJC#RFWI:PRL!7NB6 8RI-V4HZ\#P;#T^7IL
MUVH.)'DP-?SQG?JY+LSYW]U)DDKSV*<Y/'C@%1"@E$G_9C?MMW$37V:P3&6I
M\F2IG&0JRS^Y0%RPLL:A;,I5DJ&3U(;_LT-LH+LLVL7O%Q?W8"PH76  _1$8
M <F0_A?E9Z/Y_8<^IP\UCA=!1'@@'45E]N_N>Y=KF-E#7+ T>B Y/F>#T6+B
M+%A2L-0*8L!99!_CFB3)Z+F"TA%DJ:G6A9EL"DJ X%3O'G^56S?C?B75J;HK
M@(@9A.A"5@G1@>FHSD8(GO80(RP#!GF69/F7SC'* 0J#I(JAL)SULE&8BESY
M0]XN, 59!5)#T%48<Q@U4;2FEMV!X@:,9%$V T1,+5?:+?U3HSG$.W(P?$T>
MF 1PX3PJAT0C+;:\,5CF991IEBQ5<SHC/B$V@T4/2]^U,D7RZ8C>1C]A;YUV
MRQ@8)\YT, &J(3\"Y^#RO6:@X\KM45]X#I##CP_S1^,/9\Y_ISU5*<#^K: G
M-*=IDQ]^XHT"8?]G$V4G<S!M3^+MH0^P]'_CR6IQQC!NK(F#EL':*%E(8D#8
MX7=;75M8DJ:B0_F81-T5IE9V%N9#C#CCECM.\\6::>KRT#)1H\R^AHXLH;/>
MFJ+ 2YIHN <PEB<6S97V\I_<:<MT5QO]>.@LDOCL:9Y;M#.X[O*]BG_@3'X5
M?.M&O9A]RR9D=]W%Z;9-8</#3WOH4RP3,2L5LEPN!M&=%+L$JVP<X2]RQRG^
MJ#.@0DY/!LZ 6AZI7"EDZ>^8__WKVU02DYRV2FM>YVH=]N:C$:J;LRI'1QF$
M%D7^^+J4QM-SI1B'EQ<N"%21-(Z,Q;$&Y;VS[<35V=F'F;\:UBF$C2IMG@KZ
M6(:/1Y<N_PL>9[==;YNT?'JCNGF&$_:WO*P&P>]^)ZL20,^_L"_$N:C^!)RA
MX413^, Y<IA5S41:74<CBFSO>:S;F77=1-/ 8%1F ,A! C3\*.$ 655"LXOL
M3[:0V'F(D:P*JBC#&PU4 #J%P!MOET5MIX&YC5)M>U'_=7%!W,I D2Z)CC &
M[^'-?RV@BO F]CUA[YY>$@QQ<>'J,TE^C*MZG,4O?R_9'.F$/")0%%<X_SV'
ME@+]#:$2O;_7WP!= T68&1 0[]-[XDF6S E:&/6?(,:'#DV(ZV%JLR"!#\G-
M>93QO0Y>ZT.:AZ[W1'\^@^^OZ5!7BN^)%M2@#DI;&L(>Z[_IG7<7^F6E9#P-
M\^$=Q'( OG4@_+D8 JA X:-G-K5<',-%>0A><JF/]\Y]*L#_<#]("%2;S/@8
M/055AED4USGAMV68\FB>MLCEQGH,K_I 5+6Q(AC&V4=H*5&*G8!!U%O;A^Y9
M0T.69$&WFY8,#T*B5%:YJD04!A3%+9FM[IF*L[K?5/26!@+9E_8,Z((]0\%&
MBC.$8"T-2#AYP%RCZ$U3/3,GFF7 -<(KP;,(D**?.%97(B 2W+\@CH1_\KW6
M!\]9R/$Z<JUXUJ".YS%XZ0N6J@UHFAW,5%9E!PNY11N_^.?:%VX$O0IK"M<S
MMR^\7(DQ<4$L)9W (>F$CX/.]\=Y/*_GW$O<!!^[#,ZX^$ZVQ>QS])Z(O5D#
MP41T^_><69&#JS(#^Z0!*LD9K,X<L(] _-*]_SF=5L]WO#N(S]!#,(3GJ2ZZ
MA);*+Q?-.XO^]7?V>\I:\^<>G6#1?-8733GTI=<I76O\H*;37Q-!94Z1TJQ#
M7WJ=TNWFI#&3O]Y]')>.16D[:[$C#DJJ$"*0L_=Z^Q,= &(*+YX8!(!J6-H/
MA$/"VI.?7P*I+]N.F2A)V+BT&68GS2%ZV/&.3&509#.]UFRQ!8,;5=G5XMC7
MF5$37=#SF/2,+.;K@D>@6N!6UZ9!HPY6S2RO!XOK^Q_6_9_RHMX\4/6L&_2H
M8T)WP"PF&17 8.WDR<87A<:S6[]1,PP _U]R:EOIA -.O?-4C6<H\*J@>*\Q
MW FGB_9'J?FI_[7=TC$.$71C>([[3] ^A <+(7K ;*+8O9_YS\[=9B]3$/B2
MK5WD95[A/PFVAQ,0;7W'&-WIU UP%VBF_')6J8.#00A]-K:6<53?,%6.Y,O1
MY04[L1LL&2=+-GY)-CX!V1@<!UX8GB/I&..-"K*M21N=7-H8'.4\/,>0U5)T
M&4=!MC5IHU\@;3CJ;[@R3W)T](FAV&0+.^]\)+<@\";/)2C]I+[_Z=Y^O?XD
M'7/6N0N:7>5RRA/.T_,MO+'9VT3>$!DL'0&88@+ZL;V2V 3'<HJ*Y *;^!4D
M/Z1'$YOD>/H_L%Q!\F-[0[%)CF7"<2P_"-=LOSH&CV@JW'46T_I\L&C^FNGU
M\K?A$/77PI7;\):*5N2U*PX[DJ%M9193SE@=R=/8X#L\:0J>9&*<@LCHF?V4
M+/PZHED\B06>Y /;&KXB1+MVU=3">)K%DPS@2);*:=^7U.S9!J+QA.]ELL*F
M,E*>6VOA:9CMT9VF2?:A(: _RB(P>IHB#>26T]_/,T4+M@>^6Q7M:8BW>_M.
MMPG!AZKZ#(BE/,?/$0T*PLF0Q'JQ6&8B5Z#UXK'Y37EN%(*7>%$6$4M@R]$D
M0V.+<PKBQ;>R.()4%BI)CHW>*2G(M[_L[;3<6,+-$D]6RPDG*^_7QL4_U>1.
MUPRCHVLCU-"M/YB:KMV>"NWF_>+^U[?!HO&Q/!1[E%59C X\/MD&CIC9T"6L
M!]WG=;$+F/9V(7U83F29L?1>I"F2BN$:9FN0\O%H$F%P.2S-'&D8%\70V 5-
M8MI1#D>TRE \62E%MTDKJ!++/'(X EOHED*:'&H"N7\*Y[)(LO$\0\?(C+6:
MS?G'[DR2JMUGD"33^K*B3> "5!1M%L#@+-KT5V?T@-TPR^5]M,W@Y'>$^N+W
M5W.PN)/5SU:K]4RW&7S.X3;,+A@>RZ>,R8CH81TG21PZ#H=#Q_$D54FR3W#D
M$0XQT!?A>_%8TO]5LLQ&&Y0\HB_23>)QN$FE,ED]7?[;Y='P.#P:U,>=2]*:
M.V*0R"JT!RKT%)2:*M6DJ:S*R&M!PX)#=?G<,.LC[=-"E^1CEK^Y<-OG\(4U
MR#?5_^DEIB)HEL36\#C2^DR%Y+#W&"X(&,_:X4CM,RPD8)$:3DT"(^PMCO0^
M7X(D3-@7L2!AM SNM/@X4OP<@YI;'B+#?[,K?V$;_KYM^4W'\D^-9;+?^OM'
MOU>-AE%-X@/$G\6W427FI3*.ZQENH2J1O<72*1JJZVH.@Y-X&(PP>"4<X1UT
MK^D8F?6<8C#2XI2PM&1F.)*M)"G;R@42(W1^"4>4A^9L4KBC/&8U+M)N5+9<
M[FHHB5L0O-3KVN]R>Z905BO1C%5LL9W35VV5PI;=[HFY=476&N-=&$"\D)\O
M)K(D 7@-I!8C/P]U!3(3=WYUL>Q]E\C@G^BQ 7M.91@;)S(?..(E;(48^:=:
M7 XO%1R.D<-W6B8LT0C)5%(YN!A9/1QHKOK06C7O;^OMQ?W7$HQ,EI:+'7ZM
M"U)9F0W!@<N/HLQ4KC;QX[)>1'13PA'=L"62YXI*I'U)$V'WRCC"IA)-0D>O
M(,W^4K,['BOCB,<J-,E5BFJQ!'*SRYJ6L<RM82B29Z-#93SU293/FK8T=9E'
MNQ-DU4!X ,::.5UH9OO3H_GY"Z<GJ>%-4J8$P;K0-@PH2:A@6<A[E+-<(<A*
M8@G+./;52C',X)'*B? A,LINX8C7^,I+YS+G )'15@9/KP.>2I)ZSADRHZP"
MCAB+)DLQG*D$!J"RR@ Z8]J^ '.B28XA7%?]'RM#VOS>4.K?4]W1<< @IC8<
M[I3OC;CIL+E@.^K>1DXB59\LZ F9U\RP62R:>CD2(]1\!4=X4N6B-\"/I)GP
ML.%N_5Y)%D6$,"+-1%?TY)01=VGV"I;S""13>6GKB,B.N;>:#B,%M6[I.E!%
M?V\[9-R0;;NV!\:A!C!K.O_OC\>O7[Y60?WOH4XEN* 2H@LK8?H:\1%C9(N/
MZAGL@<HD%J*"(QC@28;.:8^,EZ(WRG;@"!$JB:IM3P"YT68%1]A0(NE$Y?0G
M@. H@X,CE&#9EP:X8;,*O$"BB48C ,-T:R9JJG0#1@"B1'*.R]\Z4W35\;+'
MB\_B/-W?/\[^_.P#?9CR8/CM17J >U5D=IK)+A^7W 5 HCD-84;>&G*\R;C+
MT8Q-PT1&#LO>#\GCZY=Z@D6L&,@884RK6$ZNDRQ?D#%M:=QMMJM83G&1/!?M
M=!:$?)D\[G(/JGCBT5*,LW@82LMY7WRZVG?SFN/)J@6?OQJFZOA-SG70>P)&
MXQD&AI X$&'ZO&F"J='25(0S7;-/Y7F8=IK1^ I"A,[]XGO_ZV#1>)Y\?ZR9
MU-,\G:VLV$Z'/0W6F=A.F&AM.6;^W?YQBG1.XH=4<03;D/XE?!;L1"O7CL4
M41X,CG1 B2'C9.(+!CB2!HCP?7"D+"H,R>%S?@H6P*T#=GI-6/9G&8:D#E@%
MRVXY3Q!/KE-Y#51@=^%SDRN>OU-YT)[Z_'0TZI6.D%FQG1SHW: N?(^R 9&3
M8P:/.#440I%$+@J6CGT<256+,]MX";?;M6 I+,F1"DEST>G:@G![2MQ.EX"E
ML/3^X\EJM6A?C5WF=IAREL*1 &%YLD+AEKE (U[R%]\"<^,0B^G:[:E0;[;:
M_<7'\??!XC<[K2E/DMIHB ?)63!O^<#AU4%+A4N(>0PS[*G[<[#])$+2K*$"
M8H*Y-;'QY0^.5U+HIW "5X"EL/3?X4B>W]\5V(</XH4O1^6!/73;,1@ARK7
M<BX5^H0Q3N07C'!DC1#AJN#J!Q1C?-&)LT)V[4*4UX,C@5$ID4QY_YY027D@
M\FAO0]!5^"*C _3>1-#!M6#(XF F2X/%]8P&LW&?8S].TLMCV L[O[)?ZWHU
MQ SHA(& B865ES(M'@[=FQT#$9_(78F;N6BV;M>YL6._V#B_HMXF=U5>I(/P
MTRZQH4F1@!%N!ATW@[&+@-7]^U\4!-Q# G>[!W3<3$8X">FWS/Y9C&R2,&/Z
M,\*LTW&3&;MH5TE)_,+.DH7:[QM9L4P@.1:\]??;HW;S4%.U V8QSJ]<&%ZU
M.7=QD,2@TW'S#X5!/QH)HTQZW,Q!8=*/*8411CUNS%\8]2.)X$ZS'C=:SXQ9
M]X\"^&['^$"J07,MC$'+F@Z!WAXYD+4MTS %%;W6%ZXK/_GK'W^UD=:L'BA<
M?W*!) 0'2DBEZ132U#;V!J&MP#QYQ;,7O1(Y!<FB?(^5T3CO$D=6J/WKY[*I
MCO)$V@AG@4D6_R])6R*KE0I)%Q[?<:1VMQ/!),L,^.26JY9)IE00]RARN\O#
M8)(E#M;DMIJHICVYCT%'^QBNS[6%)\?+Z#^4.M//'W_^N!X?(Z50N!Q1_!U&
MOB1.!Y,L$U$X'9D@;I3;D2Q'4;@=F2!NM..1+'M1.!Z9(&^4ZY$LN7%4U\._
M:U'7IC,=3(!JR(_N^9,6,-NCOO"\-JSY\7K&_AV6[IZ_2VFVPG.&7(A^H-S-
MBV)2<P%,0F "A:#L[ZJ/N"Y $NP36Z$-;FJJ9/^EV$>X:M)ORS"G0#4]^?'F
MR-2;B[_7^F#1T5K-OYU2]S?''K6SF ,O(2P!/FY[L720G\3)9K$<CN;)4C6G
MK<@.2(H(EYC%4?!+L[&&!KYV4D0ZL"R.DENN0E9C3%%][<2(<#=9+/W0&++"
MIMZ!<Q?2ZH(QN56TIX] &@.O45QM9 *]"T1%, QY!*VBA\1M4\HT[YZ4'YS^
M.,7HC<8\WU2?".H8>:7$2)!UXE%0+(#ZH\GJ(W#M*2$\"K(BP* %$8LP(!G<
MGFJZ_.B,X[:/<D/$Y[GS2=0D08P,D,B<8VT]7;3L>IF>Q$+Q"*^!PW$"N1QC
M3$S1UN)0 K[;,^&PC&J-T1B](/BAY'N7]\-A&3>$K[U I#]4BND/>2YA1]-M
M#)FF+@\M$WD0?:TC0,_21"X0.B/M^4!KAZ07E9_:4*W17[KT(0])[Y._._ED
M\POIF\3#X7 E+!)T<GKM>PMID#O*O<&2%.%(BBNVDK) [FCW!DOBI0H)?BJU
MS_DF>)1[@RFY4SUHL70]WFXB_$NQT"L#D1;6R=;Q>?SM8'[\?/SU&SS_1%7E
MJ=96QSSCW==,02'J23V>UW;V'S.')/*:<#28*U$D7=T_D"@Z2.2&BR*<,1Y'
MKHFOD#13<-$)<U&DC\=C26%1/,G%V'4N&"FWC!3A._)84F-TE63XP_5%\OS)
M=S8ZKL[.SC[,O'>@AUT2- 5)U9>GP"!:X(GH:E-!)9TO2*('='GTGI@*^EB&
MST>7+O];?[4($&HA&8V9H/K?<#$2IK(ROXQZAWVM(2^  ])J&>B!<"&SJQS!
MWI^ ,T%$23I!G4,Z$JIFP@? N(6 ;Y#AZ\8Z]&EG@FX/?H*!D $@IPB0CTU[
M()0JH;:5]B<[E2R@K]WY4/!&PX1?V!NA;_.)H"#B_M?%!7$K T6Z)#K"&"J.
M'OAK 56$-W'OB6]H%Q@* G%QX6HW27Z,FX=WUKC\O81 ^&"+!%R;HKC2]N\Y
M%'GT-X1*]/Y>?P.,<A1A9D! O$_OB2=9,B=H8=1_ E:*0KF0*,K49D'R&U(@
MX!!A[77P6A_2/'2])_KS&7Q_31>&LOB>:$%-ZJ"TI2'L<?Z;WGEWH5]6.L-3
M&!_>02P'X%L'PI\+9[S()61C1"T7QW!1'H*7S.ACL17I9VL/]X.$0+7)C(^?
M<?+N(20.5;+(HWFA3UV4#Z_Z0%2U,=KF.OL(#1\Z.4] T__6+OOH64-#EF1!
ME]&@F^%!2)3**IV'(;=#&% 4OV2VNF<1SNI^B]!;V@%D1M &(8%V"/.-@S>U
MJ6;!)9W)*K2,FF5 "AO_Y'M)#YYMS_$Z@A1(/!OJI3)9JC*@:68P4UF5'2P
MJQJESQ_%:PUE&JTI7-7<OO!RQ=C$!;'D?2(6[Q,^9)_OC]IXAO[<R]*ZSY=D
M8Z8($*G0J8=7!N=+=Q>4>P0+C@(#//_810]P!8AF_YXS*U)P56J  F:*INB!
M\ZG$4H/%7^I+S>!_WC^HROF.=P<!CAX2:YM_=^B:ZJ(;:*G\<M&\L^CIY&^K
M6KEO_J2&"1;-XUBT+_&_,^=^=!XJ;;K$H4YW3 SVY&=B"B^=& 2 @BX1GRP5
M$"Q%OBJT,KC1FEUIQ+Y.W *XVGEKK$]30$:F@T8-03:]GC] D]14W0E3ZK@F
MFO*C;$(/=.U87W\XZNA6J08>*ZD4#L5*"=5KO8_$[7W[>X^X[;:_$.U.HUOK
M-UMW1*W>;WYK]IN-7@:/E64*F,CVTAOC-NQZ^E:]<_VP*'=_#A;W-/_0_MWY
M5&XGJ2 +V5=U79(22CUL@Q\^/<.]C_G/SJRQY_ $/GPK%>Q=7?I/@@0OAK[U
M/([-_9A]ZW=B)IB[,*!\YX/3PGM46KQRN$[QL9$3**N,3U979X7LJ7]0K]L3
M /M:%T 4B+("UA#3U_96_10-E?_?4:\_-N\6O^DD?>J2'$CU+8PP-4+WED.H
M2UV OD=_H54[D_.0US6<$YJW'D)8+J@X%)[$+-1\K-;Q9A/>:OJ-9@W-D:74
M1-%.<4 V8=:MQ!_EV^>^J2U:#T*:70!J"@R5!93V1<>G1!W >)E0(*>#XQY5
MWH6L9%:AQ.+8MB-9)EH]9?)DY=X8C=#W)1P5T=5*=+GD"SL.W( 95'ZR=QZB
M-D6[PPO[SVVIJU-216#D1W6<3J>O[;7XP;-3V((/P*,RS [$)91 '#6V#!3!
MTDN9)B<8C9) +,.%H9];KJ8AA+=K0C@"NHY\I>789>=L4MVV. 'V;_ZCVZ'5
M._GN=Q))C&W_/,"6+A$"[<A,LAM5"64/1R4F3U+42UDE3UB-D+\RCKI$!N+T
MI1Y%9-?+]:GHC;^6;,Z_ '.B07PLC](C&72G>OOD\/'/T"K]^'7-EN4#640'
M/&)JP[>1MC@*[\3"7C*Q+">K)0LY.$\SF97.6'-ZDZ X2D9Q>/T,R522-/'8
M-9_7GU'VSO"VU1O9F&F&C)[?'M5@%&8:=+!</LP6TL_^2)_\_).F?42@$9!<
MD@V8H* M5L&&ZZ@BN1MC"64QV9F_$%GD7AS9'$L6$^ V2@BQ'*Z#!B3ZL-5^
M0E@; -$RH(RL/-2Z9ICMT:U38:F.MQW3[Y___A2H;KWU)YWY4CM\5!'"A@1P
MY$%W%!GLW]WW+D/0E5#R<*2.62JS H<)CU%2AL7%CU&3GBSE[@E:%\!;%T!"
M:@:JF&6?IJ9JF+JU]$37A6[V>?BG\KNM_1ES:5H[#S9B[)F]51LI>07?\=@E
M!O*2B6 %R]D8DJY$MST_EA#ZZ]\N#"!>R,\7$UF2 +P&<BDC/P]U!6*".;^Z
M6!:W8=T!"&]@Y]G<!U5W*1SL]7WY>U__]HN5IJ-TB@BV%[B"*+BW*9*4M 4B
MPF'9!ZT)I0-'KIOFR6HB[?I/SM$;8;<J.'IM5,@R'7VZ<S_OD-IL*>3M$-O!
M:N-YAHI1@^54H'\W>H^/<X8Y0 ]ON.(+>P\W4WV&@Y"54/J2Y;E# C,VNQ8*
M(U*C9"Z9QQV&TNI+<1K9[@*N&.H8 ]P YU]?T45=F,FFH/@J+AC41;]AU92'
MRNWG-CABN9W=P-1 '4Q]-15V(&WO]2FR,)25HKXB,8O<[&01;WN["T0 '>6A
M@K0UNZVMKQ_*/R=LN30O8:S(VUX-M)P2( 07*%22XT)U]-QK)-Z2*>XJCN0K
MRY L^X+$3^[0&J&ZJSA\488B(;]C]I=V"R-*Y*NFAD[F!4NA7!E5?\RO6PS-
M8-785[XW9XTE?* E%#$<J566)RLO\9[S@\\HV<)14<&P9+6*6[9N=\I61P<S
M0996(4F >%7:G3^]3UQW;B5QB&(;.1<4 CBP9$[BUE&54.AP9%H9LI3(;<Z<
MS,7 Z&ZQ@Y$V%GSRB;:_=TD=LSL"01'9JO;;=NN#9>_/:/1):6E _Y:DF#=)
MVL[)#&1@IS8>VA+)(:0/UNJ)*EGE,SM.:&^QC(WF*.'$XL233(Q>X/L)9SE6
M[-<1YLC31N66HJA;0+I?Q=Q(6-?WF2I L]BNP-Q=_SY@)#AS8'3*?QTH#V4_
MD\8PN]":4)AQI(%9FF2YG,ZAPHCL*)'&5(A=2:=R\3I*L!$*?(6<+GJVI?GW
MD_IG_*Q?M\KI].H/$&P$CR?/6;,(H9A+*+"8<\@DG6B"7.;\X?W0'"6J6"<K
MT162IY.X.+OL<'6GN#:F,T6; ] %"NK6LM/Z"G<5J=-[LOY^':9I?>^%H:;[
M<^]9XZ!PG"635#I9<4<8$Y$5.HN"FC*6(P25QM$5-)W3<-0>4>Q.^5393]W6
M%^733?M0I8].&'LX47U9D/5R0<529U).$FEET@'>#[U1$HIEILM+YZHFD-"Z
M-IUJDFS.Z^XD2R>8A^' AK1N)YZ4:]H0>XWRMW:JI^@\P$+VMC/&5;'PF5"
M\9:JD*72R<AR<JQ'R376. 2=+T['##=V"OF-!5#3$=L5Z0AZL &^!V;]E_BI
MV:LD*8/>WP"'-/9RP;3;5OO$VWM*CH8P[NV:!Y IF:9@DNUYA'$MR;/[SR0X
MP:FYJ1$T0@DQF$,L)L'$F]WDC-Q6CM_7SAT6)=3KC6Y]0347@ZGI=SID1OQ:
M^2C5T!0]7$Y'_/9VG6[[6_.F<4-<_]S9WR[TR3MY.]ET#!RC+^+3)Z%&PM(@
MAR9I.KKXX05C4%(@5\P7'9YF44H'1[A8XLARC,1KXHDC41U7]RSFRFQ]:J:
MB:QF"&%,Y[1]>!/3[T9M_JG7D-LZFVH\N=&FM-GZUN@5;4I?S@+T>C\Z$0!I
M1\>%&QDQARH9;?U&-IQI2E W&%U@6KK:'KF5]VLM3C\/P6#!_7WX_?Q#D=7O
MAXE3SJ^6H+IEU4 Z:OB+#;<)33F> C6&S]F1ZL.@/\(JLSBJV2IDE4Y2]+Y7
MJK$CS.W#8GVM)D(LZ>#:,F05H.:/]E U9"'<7]!Y5'HMOV@+^L,=,WWH]-AI
M-]4=.P\N0D#0.!TITF:P>,>%.3;Q<>%C[3?N0_5$_(\CCBB1%>X%U;&1/;JW
MD+#>""N U;__$F:W]=)7]2E)PYT='FW'TL6)8 #4V4->09$Q)GEIJRN.Q;']
M4J*RN/.,&Y=1 H:C?*N,NPR$#W$M>_#][1'\!L:\YKRC"*I94R5DE6<( ]O.
MXU?M[X/V?*?)M5&:-@7!A41NYD)F;UH!#ZRL6)=*YJQ+?,\K@O*)6!^'8TLS
M)$NG4KEXL\O"[!2!;7LS^6Q]-\>T,:KCM3=[[O745AY7M+2<WH9!?"HFLXH<
MCKX[/$.62M$,76S_O)":$<J)PU$"5F+(*AM]C@G#WD^R=&#XWH^MM7[<F-?0
MF-=$*\DAWA?O_3ST&C=$L[4S89B]?9\(KHU/G(0Z*-DV0LC>)4^3%!5=)14+
MGUNJ*&.;/^D2+DK=8.Y72I:8Z'3?/F0K=H"REOXO1:O\90O*D!V@=ITKU^;5
M=J6#<7,_>@?HMMFJM>K%#M"+6: :$**T1\MT^%8L\K53'2P:W+?FJ+<PY/F!
MMG/L*;Z2"U0VLC<^)"4SLSR.?0&:)=E2#KOAQ,5BA,WCL;0IY4BJFJ2..W;Z
MRUWLK:9WP<Q-[[9'SDY4L(0U.W]_,'^NQ=800X/;J]Y$T &A+]^=D61R(#X2
M"A.68J42R95RV)%S?WQ&B16.0B(V1MB:O#K1GUAL&H:%9M9!90*&ZQED6YBN
MJ[>R/*^/GV\.9*X\X(@1A ZB:YAZ_CAV$G8=5PF%#<>&0XE->&XP8UGM& B-
MDC8<7:98LI3H)&^D@^AOJP&UR\INNZ*V;;MN+6E$_ZKHSTV,16$A!P\\>% N
MVB]GIY>KW,1]0M'%LF'"D^48;7.+_'(LFD5HAQ*.,($C:0KW>9#(7AWQ,PKA
M260GW+S_]+/4G?&_^NGT[4AVEN"-FUS^9V<R(GO9Y40YR@"B)5- )1R;(C2D
M)!?M79[.J8)DB>6X1(O20,EBJ["S3!Q99:(S%H=*+&^&RIG-WF4*F,C^[(W1
M"(@FC$&?1;OG>5<P05M%3(K^0Y'I(^03N_DQJK8532#9=8:JM/Z%[\JF*BH6
MLD\W[NRY.TC(&;P#_HV86E8M(+DG:3356#,GBW)_7J%+G\R&>)A!*2'5$PY:
MD+,*7,00$%Q B&YC>"C9SN0&57(^@-7Z#^\F;1F8!![2;L5U?#9):,6P](X@
M^1C])6,Z9<%2G"-7.I>,$F4Y<21*4'^EZ*1D C8IS&8FS*:_2/!%#-T!NHS.
MM&P>:7?9W"\ZCC@-9!ATF3XKV>C=S?F&\F7T]5!]B5N-/O'FIE'O-FJ]QC\P
MFG(^H9H=.^"JM6Z<#XVO#\UOM?M&JY_V/F^$KWU8$B4T3WA;H% DE:@%RG$[
MO&6 4%'F 4<RCB7AT]-._![4<9=[@X75N&87"Y8VOZ58]!_BI(<J'N*"N 9C
M6571V"94_&PSR<GZ7,?SKFI&>V0+#<U<L/2ZT)2Q;/E3%%FEL*6P3]SY/CHC
M<(&,@"63R')DI8*M5CY2J7)'4ZJ-P:(\I9Z__6@L6HFF4&)+@NS2KPU5.J9F
M33_C<719"G08RS@*/BH4C%2C,[N%3LT$'P1ZI&4L>2VV#(UK=,!0I"SRFK+P
MUXWWK-E, 6B36U 0F]XJVE-3=9@(4GVM6/SZNV3Q+,^;X# &Z/RJ]]#IW#>^
M0.M2NR=NFKWZ?;OWT&WTB/8ML:PI)YJMVW;W2ZW?;+<R2(), 1-6["I:!B2;
MX]1T!%FZL70HVTX8?:OI3:A_=*C.H(ZR1R#XIO/2D#%ZWT;TY\<:^XE54CU%
M@+94['%TD@T>84Z ZVL@M5?,W'UI#RF/S(@#6L">O3Q8_+PK?7ZZG8*YG&2(
MTLY!GL[;DF%JR]?;VX9OK#99KJZ"HW*9(TLQ&H3BY;3#X"\BA5;!4JE,LEPJ
MM9/KHN&;_^*3CL7#K_:#51>-.XPG9+=A=5Y/P/<?C]J;"$@H,#@VU7B:+%%)
MZM./+3&Q<!@E-#@*CKDRR28:T(3+GR^.A*;DRJT*.#45%:&LSB>KTK*DK&F"
MZ?I)T*_R+VI^_;DZ9R=I*K)6NW5A>^Z^,_VMF\ :S,*?2\(!_CX0MX*L?Q,4
M"[1'[G@&7_N_P:*E5^__?E7*C_/J@>*YFCM0Q 4#ZB0)Z(0(/\HFH>DO.&OS
M<N4<BJQD=JZ*([]=)<L''_]S:$Q&6+LJ#@>[3)9*J;B(MZO0V1WOZ4X'A$&S
MUXC1UW/)D3OQJS*SI@_/PQ^I'KIW 5K.HX58)(;86F_&8I.8?=&J_*'ZHB5G
M[O[=?>\R#HT3,3D.IY@E^<I+E87'Y.],M,"KL[,/,W])]R5!4S.3Z,M38! M
M\$1TM:F@DLX7)-$#NCQZ3TP%?2S#QZ-+E_^MYX9%@(+'#0ZQB\9'PE16YI=1
M[["O->0%<$!:K<)EHEF>8.]/P!D:'SV%#YRCQ):JF? !Z-0W?(,,7S?6!<4>
MT(.VU\P),  DOF!!LPFM*.0W"4V7MC_9.QKV/)^1X^S!&PT3?F$?9'I[" 3]
MAAI1'LW3INY_75P0MS)0I$NB(XS!>WCS7PNH(KR)?T_8!NB28(B+"U<O2/)C
MW/T@9Y'+WTL(A ^V2$#J*XJ[]?'O.11C]#>$2O3^7G\#U-F*,#,@(-ZG]\23
M+)D3M##J/P$KW1%,F=HL:(<E1+@=-EU[';S6AS0/7>^)_GP&WU_3A:$LOB=:
M4-\Y*&UI"'N\_Z9WWEWHEY7.\!3&AW<0RP'XUH'PYV((H(Z#CY[9U')Q#!?E
M(7C)C3X>6Y%^MO9P/T@(5)O,^!@:)^^>D,CE1:%^&%[U@:AJ8T4PC+./FH+$
MU2":JOC6/IS1LX:&+,F";L\[&QZ$1*FLTGD8<B6$ 465ELQ6]TS"6=UO$GI+
M0X#LB-U79 *1 W3C?_^[PM#E]X33=2+7.'E3FR(GS3B356@J-<N %(=W@&<1
M( T_<<RJA':.W+\@<H1_\KWF!\\;R/$Z@C1./*/K!60L=3V@:6XP4UF5'2Q^
MEVKJC^O2\Q &3(1A3>&JYO:%ERM)("Z(I; 0,87E_UPQ(7QH/]\?R?%\A/.-
M%*LD&S-%@.B%7CZ\,CAPC-F!(?:AUMB%.W )B'S_GC.;KE"HLQ5Q5M3C,YL
M<8[1!3PQ[94N$P+7E<&JM,+C'X=9ZM"]AQ2#[%1[EHW59?8D5;5G:N*?+V Z
M!/I@\</X^M0W*FR-$G%CT=&-V<3B:^27F[WYI8_.,ECZW.88AWD\OF&%V]K'
MT>('W9=?$]^\1/IJ\'TH3R(H:$>NJ;J3@CR,JB+=D>NUK^Q/[!AUWY1UE#;B
MHM3+@]Z#L:!T@0'T1V!X>+Q7K[]]7%SWKLW?N/'HOBKK>+S>FS6[P!1D%4@-
M04='5I:X[(L]2YO=LD\"=NM >._*.C:Y_05=%*VI90\&;IL3H*/KH$,'_3[Y
M$3@;\QZ"_UQ7?W[IL1JC2+@1?*\9F<?M[6#Q\%$8?IQWOHS^3'!CP LP7XX#
M.U<=67L06E> %8$EW&AJZQ "&*XX<8=!?ACJ[^![_X=Z2U$43=A_$AU!=_*<
M&60I[!CQ_!["=GPRN.*5!QL/F!!':^F0N"1'?@DAJR>[8-M?.-G5>4;\9!?H
MLZLNP]KFU?V\9F5/%@=]S5R*:T!2%9NQBU%J5R1^<IRRR'*07="TH&F.$QJO
M*.?PJE("KR4\SW00OE$5R;(#$97%4C1%#P;V)Y;U'Z:Q(SC71_+&:/0&B^GO
M&5>M\]PU54ZE'MG=5&,J_PE$U.;RF;<\HLRUH* &\81@$C= M%-$!$N3!&,W
M[EG'H/>&O5ZP[_EW^S9"TJRAXMLI#'YE9$6Z1[1JQ3]*WC'/;<LT3$%%,"/Z
MS&0ID*YQ4W$[M[S:H^?Z1WG8;G3'YX0IFVCU+N9)9Y?>V"T$@5CAHK$2JZ)Y
M"Q^[&MYXZQQL+7.MZ).GXA9]-ENWOEI/!Y;S*ZY$LI4J27/1W05]/!+(@\E8
M)[<\?SPVVM)[&/B(JR9K%[=QHJY@HJ2*T]].(6!SUI%7O ITQQXP?SW_/)Y^
MZDMW*T6Z3)T:Z'IH.[.B5T/1%4LN0K&PH6?CRD>PGJ7)$D^3'!-]6+*0D$.I
MV8@FGPGU;#Q^XJK)^CZ&M.<L5TF&CCZV@8FWMJ:U%&R5MO7>66&RH:FPS)3D
M69+E#\91A;8Z+%LY93:#@"J;#5["TFB3Y I..E5.\A14<)W1!C?A.,U<*E,D
M7_!3AO@I'3\J=JG5!H]A'53$LB0=HT5,X5?E3&UM\ R.!E)EFB4I/KJ+< IZ
M"6-'S- =A]A;$SL9\ 4L%8])$MV;HR%PQ?J*]17K*]97K*]87XKKBYSM>".C
M*:.J9/BVE0:R/0=\40&:^?2W]>OKC,/;Z]5[*?'F?U9'UNWM$ZJZN>_<T641
M#.2F;[\$[9(LU-^*1=]V;]OWRG)G8_G<Y6'N6%NY]BO"^NNS6UXFG6P' 3J7
M'6\7@7I+!VVQV4>=5\"G/7+I8M<U!^QV%[,Q%$]3AVH,=;HHI#.'PMB@,_D%
MG<T<Z!&YGB"SL*OSX4I7[I5(I'$$["6R%"-<WY&E.39WO*#?74:]E]2X:X-]
M<#3*B\<^^^3]BL$F!3 %, 4P^04FHV8ES:"8^__9^];FM)4FX>_\"KW9Y]DZ
MITKV01)(D)Q-%<:7./&%&#N.\X42T@"RA41T <.O?^>B&T* @,%(CFKW[,8@
M1CW=/3U][V5Y>[BDVN]9W#1MYQHX U/UC>3R^.+NGCO1!N> KI&,;47F#HQ<
M2QG(-M@SH^3-DN$/90PFY\C/L0PQ\X/VZF^2Z<D]/G;/KRNUIC8(_"%Q%EK(
M\=PM17-^FQN:!RG3-?G=TC4%B6?KW*Z3+0YEA:610WM".Y5\(9&MB.OG\F;7
M,N/SZW+@L^=R2 UZ);^@_W&F/#T1%1- -$S[E *HL.VS;8T4P!3 %, 4MOW6
MMGUDI.VR%%14Z]\<R$8?_AV96$3&I>&VSXVQK.G>H)<VO&_0A&Y@:6/9@8LT
M(9SH>K$[,ZW9=:_&5=793]GZXO8)V(QF,#T(.#-&D*,>U5H(.R/[P..Y/S8$
M'S<]5X,-X"L:[Z#P,\RI=$(1=-X9A?D-.@OYM0"%_%J 0@8MP.5CP/9]I6SH
MX=FRWD*HTC"XZML$XG.AGV2> 6+DI&(_IR#G(8L<LJQF%\ 4P!3 %,#L%YBU
M8[^7W4WPPH$RVVBZE@4,97IOR89-)#R\@_!?4(- ?ZEHF!RZK&Z <]N[EU];
MIH6_<!Q+Z[IX(M.]V9+A,DYG9K>'WWX-3VJ]QO,;6;_>1AC%VPGCA, 7=MB\
M6EW+G%J=.Q36,X?"M*!7LN?(2 UZ?AT(E0PZ$%8&]-[TPG@;T[9"8V@\)[ \
M]X=9MQGFB1B%:=01I*1P8?!F7BLN@"F *8 I0L8[A(REB W=LLR>YB!O;F=V
M:VERK=O[*MP(;V3@PBN3T?!U6]AB\ZJUF#G5.G<HE#*'PM2@9\^9D1KT##H1
M5NK_H0#<0PUPE4:;4X%C:_5M4LTSQ1C5'?P<&;VCZ3)6C'-HM*%,R3E9Z.6V
MP>RVU%-EO.?739))RQ2;K+-2BTN</I,6BF+WQ>Z+W1>[+W9?[/[/V/TN@^52
M;H1V%^'T2V^.-BH^(.'4J]JN!%7;HE!>/[CNJ6?UA@_\9, -]N(BVFI8W;5L
M*0-_4IVX!?M0:4J]VV@E+OU,NGF249E)]_I35*L_ZZV:_D)C)MW;#:*+&^5K
M!M&)::VJG0?1T6_GGV4^?F/62-=&?4/>J-*(LZX?+O=G,48HX*J;SX[;5="M
MZ"CR33&UEY_UVR;*):<^.^[M!\9MV0I#3,OSR?*09\M\A16$]3U(_BRNI\TI
M=(:7;,DCU>V*9Y8,*ZE765%:/ZR$ZH22/XE5]L(I&PQVJU*IS4DYV*V0*IEA
ME;3#VJK2FPUK*[@C,]RQ4<R4QI!G$=XS4ETJ>"2'>LF6F=!5JL-JN3HKE?=K
MS15Z"B7.B=DT-'(N)*'*\D+ES>1',1VMF'Y3[*_87[&_8G_%_HK][2GS/^UT
MM(NK7\JP=6W7*_TWFXY62S$=#<4!9J^-\>_9[WOU]5;9ZW0T\4@HSZN6TG;N
M\F(ZVJ[)PV)1#K$S"O-;#B'FMQQ"S%XY!,7Y594@@1W)RHV\?!(-*QV-MUKO
MHUGA>3DP=TCOKR9B;]P58Q\:Y1'IV*?HH/Y6DJD I@"F *8HAW]CH[@13WL.
MATJIIZX%-9@6L#13Q2U.?0OY>\75;LIG7UXE+0>CT<(T/"GE9OU\O!ML?<,=
M[RWW6!I+O=/;R;#2$G8:[I4F&+ERLQMJN6O226N[I=9QY6T&>V5&L2WL]9U1
MF#U[?8<3AF7GA@=L@ZPSB4;.2*XMR>SY&=*"7LMO[\;:'V>_4SKCL:N2AC%?
M&/)Y-ST*8 I@"F *0WZ7,>?T1Z%U9N"Y\FC83X]RM9?IJ6>% 36OG!4VZ,XH
MS)X-FAKT_,:,:_FUY>K9L^66&#24AUMMZMK8KL2AOMWD^B4E#M6=/(P9U2^R
M1.X8\;:S<K<G7F'O9EM#+X I@"F >8? 9&UPV7!8L_C99/H"*L7@LLRIS)7,
MJ<RY0V$U<RA,#7KVG!2I0<^O<Z">0>= ]H=44;9EMRO7CS4XK[)B72@&EV6$
M)^8H+):I##](1^%B<%GFM>("F *8 I@BP+N'P65BNS9^>KC]T;7D8G#9055K
ML9R]F<"Y0Z&0.12F!CU[SHS4H&?0B;#C?*GMRW/%,HTVGGR%K6Y5GYLMQMC!
MSY'1.YHN8\4XAT8J?DK.R4*;M6)P64HHBMT7NR]V7^R^V'VQ^S]C]\7@LCT,
M+JML,;CLK#,[UZ??5.NZU?CRG)W!95]= S!".<]SRTY6SRT[V^_<,NV+/NZ5
M6[;1KN=N;MD&S01$+JU1M7)N6;F86[:!*#QD5_.->(-&F+686[9,P)VFFUM&
M4]"MF%O6FOXJ3[\_U$;G\GN96S;'Z^EF4HE\6IXOYI8=4AQ2FP^R#8]P5(ME
MBKEE.;PYTW>0$3D:/2C(W++UV4J%5,D,JZ2<6R9R0C&W[,_CCDU"IAR-^<$2
M)[!B,;<LCSRR71ZTR&TW7C5^\;!UH9 L^>&:& _0R+:0:C56DO@W'UGV#TX4
M_UPJ_3N*<L5'ABM#%-]K0V S-V#"W)E#V6#)!RS3!I;6^\0,9:NOP>71H\%_
M\V]6H(4,#\U\O@:&MB</-7WZ<=T[\+.V-@,$I' 77DK'",&.-P'?I>L>?O[O
M R02^AL^I?A_;[P_C_D44]?ED0TA\/_UB9EHJC- JY3_^R&6E*!J]DB7X<X@
M'>&3R7[JG5(1=@E-P"T@S/W?!WZU;R%]+,$G,;'/MPLF['NG003BI);6H[/*
M<RU^Z4X>[R90AKS0QF)C:+J&\_ZPN-*:Z\R^2,/?O/F+X[]0YTOO35E'Z5E:
ME/I=LA*LGLZL]=(]@S>5WFTIM/'HO2KK>#S9F#63[8/.K%;[^5L2G,FMH-'&
MI?^JK".SLODY3ZM(=V9EF>>O6M7?3[5GVOA%^8]9Q^UY9W;[\/V^]UC3&I4N
M=0[#5**! ZPJKDVZ7%I11Q6!(FTTW5H0 MF:,D1[8?_M6O_ ]_ZG? Q5>X[!
M?S(MV6)P6Z%LLM0.:1N!UA'<SAX"T"7-:,:[W3"^/-_M[OP;C7FW.XQ<,Q['
MXMO&^_?<I?-N<7!O.L%YQ>++<V#\[__4>$[:,JUKNY3[PIP]!//\ 2;G'V0*
M_D'6VI]D3/TIADVFS9=X'O(Y3O:JECDOV:M:%@1N31YRNS-[M7\U3I_OP<V+
ML)<\9,^K+$C_3434^ISD4Z!@XYH1.)R77(ECT'L#O]$+=HO^^*[RY%=ND,PG
MK<Y6;@=)?'&Z4LE6MB_4QQ_5ER]7WSD:V<H>5JKKL4(Q<;ERQ/%'$"$IDU/Y
MM%V>EB8NU^L<6TV1-1'A$?IASOSQ_.'8*%T<=%,^>IL10043Y9J)-LCWXZGD
M<]5YMERO%&SU/MDJ;6X@3R/S*UUN8,%)N>2D3?((>1H)855H($BU]7F$!3^]
M%3_1J858N/&V2SKDMTLX6U(; 4TEEA.YMV*VA3J)@L_V)+=B3"-1$$RB 'FE
MMKY$8@^"*5T4>H/6/]L[R%:R']UTW-0U^S1?6^ROV%^QOV)_.^YOU2[2@IP:
MOLU[D92;$7?RJ3;65&"H=L23U=%N.JK6F<F5TZ\WEGLK_*([@.6S_U+FK_^0
M]/C U5WFXZ[NEJ4IH*-=1GS<R+,]>W[YJ7T]ZSOR+S7P2@?KCH!%/-.IO,?X
M%8D*1?6H+"PH%,)V72V@'M'R'<3E8R[)JX<S^T/@_]XS0^6MPZRPP]SZ0X.>
MO?["J4'/7E_?-49IDDQ+[ D*CS='>H)Z!WTCCX= I7*2+>\VT/+0W+%#_^&,
MZ@%[XZX8^U"IGDO%/IOX)XH)(P4P!3 %,+L:&:?QI*([,'(M92#;0#UU+7BI
MMH"EF2HN+_ M#O'GV7#R>G4JMNFV.R0YK4P( A4LA@DZ8LK-^FVW;K U W>\
MMZ0=_K=T=W/;FZFU06 >Q9&PD+VSI?]_Y68W5+S6)%14TCISDQ-S.%;D\JQM
M57(SJ#X-@^"COR%_;) K4=FNDU8L2,2OSY/(,+_DU^RL9,_L3 UZY4^SB2B=
M\MCYI=)B)L7Y+<RC+&N7!3 %,+D&)M$\BO9^7Y8"@TI>FK(].-?-R1>@]L&%
MK!GHPT;/ =8=4'39MK4>%#[^F%SYM3,KWPG7YZ\OS8MQ[XVF"IY".3^&,(P!
MT],,V5 T66<TPW8L%QDO]IYIDK<P1J6>6\VFFCW[(S7H^0T>5;.GQ:_1!VE*
MM$T-Q.U2"ZO;)=8O22T4A?4YK"NLQGP: 6]/]!@)MXO'[4#"PG#(LMY5 %,
MDVM@$@V':@K#X=RTH% RFJYE 4.9WENR81,1AJ0K^DLGLE9]=FT'Z>@WP+GM
M0;G;,BW\A>-86M?%W47OS98,EW$ZLP?-&0JOUS]F[?T4@2]BP]L(HW@[89P0
M^,*JF%<2Q<PIB:E!WV%4\:%!K^47] R:H5OIEWN1=F]C=8@TAF!Q=;8JK1^1
MEM/(0^YX(D9A*D'(=!3>KK2HL$D*8 I@"F!VL$FB_8E:EMG3'.3>Z<RZ?4._
MM*[T<[[V1@8#E.*,AF^ PCR8T_;$_*93B#ND4QP:]!VRXP^B8X>G=P\%$R*-
MC/<*SW*U]1,-L\X8.YB\N534-V6L&.>D+;FCP#F'U*+]!3;H(9RZ9:7W_+HV
ME6F98I-U5NH;B:TMTT)1[+[8?;'[8O?%[M_[[A.[&0M> 4TE**!!H^O7=C.N
M3WL3QSG]IC3HEAFM4"'6=S"^EBUEX+<OKJ;02C(SL3*L@ZJD;U0\3S(J-4\W
MHR[@SNJ/(T6CT:CX[;H3;U@$)>U6!(6Z$]?J;+U23%Y-+^4.-GEU4]Z@$5%:
MWW&X8(S,,<8&E7$2G: 4Q]:E]=64!:MDAE72=@:6:+0M3]<9N.".S'#')JY<
MB48?\JHDL'5^?5R[X)%=>(1.!U]*"2\2U1SM&L_R_'Y'QZ_/R7_'K$.3<V)\
M0*.V5ZQ562Y%FC[53KQQ%X2TG0OB16E?W#U4W881AL95S1[I\O0C S<#:710
MCT2>V#[T/YP=U/\@U5IB5QPJXY/*N_8_U-+&<0O_P[L1WZG]#VDG9Q7^AW?&
M&!OX'VITTIX+_T/.6"6M_Z%&Q3]5^!_RQ1V;^!]J5 ;K%?Z'/\W_4*-:YE_X
M'_(C7F)\0*-W]T'\#\4DH"U_F_'"B@*8 IA< Y-8&72><M1,_7>E_=MM]@V.
M;M.R5:-FQ!2C9I!O<*8;)W?NJ2 T5;#743/BD5">OZ;J:=WDQ:@9NO49M?S6
M]=<R6->?$O1Z]MK+41P&4@D*7-!!W\C<K=-PB$ALN;)-X516FEG7=VB#EU%%
M=F_<%6,?&MD:Z=BG:(F691VM *8 )M? )!H9C6U&S3R=GG"37XV3R0#D:M1,
M?;=1,WM(>[# JWO:&G7[3UHV1\TL4;Q61[*E<EH787*6 \_6RGD>-5//7E.V
M?0VA6,(?&P2TZS3JT_E$0STW_));LU,J9\_L3 WZ#EW-\VD343KE,5E/(YR<
MYOP6YE&6M<L"F *87 /SQJ-FOHJ_;T"UW5"!5HR:R:1ZD-NFT%(Y>_9':M!S
M&SR2RAG4X@\^=&29?;A5"IK$T4A^EFK;V(JYT/^S1N\8]:A$XE)0KVCFG'EM
MJP"F ";7P&1MP(Q\_MA6OX^4R[<R)XKY,JDU0RZW#:0EKI)?T#/80#HMZ!FT
M/;,_2X2RK9&V4]S*0CJ!Y<5M0IGOV-PX($_$*$PC\IB2PH5)DGF-K@"F ";7
MP&PT7Z9FOPQNA&J[?"T5\V4.J^WQ^<VAX',[&5[BLS<9?M<Q(-M724@\C33W
M2H4MUX2<SY>1^!U,WEPJZILR5HQS:+2C2\DYQ7R95$Q13%HH=E_LOMA]L?NW
MWWV*'C.[(H1V>YGT2V^.-CJ-8IM;-(H]Z\S:55!KZ>5A_;J;G5DU7UV#$<IY
MGE3#K>X4>[;?3K$_'HV3^G>N"\9Z[CK%;E)#)>Q60X4[Q4HL5W2*W4 2'K+1
MUB:\P=.(316=8G/(&.D+ZR2>2GBKSK%2M6"5'+%*RDZQ$D^CW731*39GW+&)
M4UB@D6XM<F6VGB)"7O!()CK%TDB=$;9+]%[2*5:LL9RTWTZA1:=82IP3XP,:
MI<&2(++E,G?8235GVSD@)@^_OIOWS5?PDRLFU5#S/YP?U/]P^_7V:O8Z%>N7
M@W?M?ZBDC0@7_H=W([Y3^Z;23C$J_ _OC#$V\#\(5!*H"_]#WE@EK?]!H.*?
M*OP/^>*.C?P/-#Q4A?_AC_,_5+;S6Q7^A]R+EQ@?4&DX< C_ _R_J+KI<ZGT
M[RC*$Q\9K@P1?*\-@<W<@ ES9PYE@R4?L$P;6%KO$S.4K;X&%T>/!O_-OU>!
MQBX\-O-)L1C6GCS4].G'=>_ S]K:#!"0PCUX>;.C G;\7Z4<SQZB#_[] )1D
M!4I#N. 4\B!CF Y< +6115,[X.OZEJQ#"6(YC-ECH"2U >1RV86Z/%#1<5*A
M2"7_PHE 2.!&FD39OK?$/B[HNQIV5+*H]:8T@9\'^_\='3'G&M#5CTQ+[D,A
MVP:_76 H\''Q$X.[.$+9PQP=>=>!JHW3)G^1[07?B_CE6 Y!DNBZ)^#^[P.4
MLNAO")7B_SW_!L74=7ED0T#\?WUB)IKJ#-"6RO]-VN/R!&W''"6)S"5)^81W
MYEX'GXT@S4?7)^9^.H+O;UAR5U,^,3?PUB$HO3$1]L3HC_[Q?X6^"<6T+Z7_
M_0=B.0'?%I!?CKH 7D%PZ1&FEH=CN"D?P0$?1K@KY-C1W.)1D!"HF,PY8N4\
MWQ'_=C_? \4P^Z@;4ND+O,F1V<) +?082EF5:;M=6U,UV=* _>\_W<^YW64X
MZTGNE%$K.6\G-^A2*3DFTPSNBV;TOC@/[HO NYYO1/S5&)HNW$1),^"=:;HV
M)#/\!7A5 !*: W*_1L98,1 1\M_YWO.#KQ;D>!])8H9H[S?N$/Y&22IS$H_*
M'/Q?QR3_)M8$@%;!"%TQ%FJ./&=;5#_$^QU8?=G09KAW07@P2%N#E@55+L/!
M?][V@I,2'I13S59TTW8M< _A.M'1M!IT-_A1K]I\;R'*K^K,K';YY[?3U\OF
MC^</>;E-(+LBF53BCIGY^70UOMF9@?,O@GFKE2]/>Q\^7P #0!4X8(E]<?9Q
M53,2]^U]J"')"5]PA)_,Y]6Z'TK^JWT^<6W- /!R/87'SM)&I).4MD=RO2.%
M)YG/J+/9,A6(963F7#<M*(>@<+5&IH4%$/,7-#:9__V?&L^7/S6)@8K_XCZQ
M_L?ADO%O)B#^B>L_PYB6_YGI6MZ'?Y?@%MP>E-!0N-G,0#NR1T ).E="&"T%
M%76B[Z&:@M^);_ )Q)<YL9&S"%G'\!NS"Q^ BZ 98@[2:=!CT,*&UP=6<9"E
M#"\%XK&"OX;81XK?,4/:VCCZM(06\K8,K>X>L&Q&!<C'R#(CRU3);UE$VQ?@
M0$2R^!VH(;.LDPXXR%B?!]F>VE"*$T"[KN81 #XVT/H#N!90-7>(U]'-"0-T
M,,8+E1 )CYD6>:V-VC#HK@J"?:,?J*9IH6\(6B PNCO4#'=(P!IKQE1GT3XT
M: 4A3P(. ]H>S Z:(6 QT%+1;/0QR_1T4T:[8B Y9!7@!TL1!))70[W)G"BR
MC3!W'\&7C>Q+:/HQ))@$"&0WIN7 738A?BV/)&W3=09, ]_J,@$5O$+N@YL<
M0K,+4A,R?EWZ+\*1!C\,,8\TV9[?PP[I>9A^ASNJ G=<'\7+U OA$_=S^1PR
M=]*7LZQ/<,A?EX[W8/!9< [@F8)*/+1AO(5T"*"!C1KO Q1\&)I',F04N%.E
MY'VLN-8X?,C6])<C>',!J&P$'_H_B4@;5>NCF#D$ QX<\CF!KJ&[Y%"-=!E^
M0\"$VX/8TI$[3K,'0$6;,U6(%94MC61T]-1@X^@G/4TGIXV!/T>@NUV$TZYL
MD4]'*)P"7^B_#,E.3H("%6) )J_WT0*):;DVEE+V$.A$2.%WHH.-%B.@P+]*
M\,T05!N]*CR$^ ?:T/LG_B(0=W- 1TAD@(D^]<4@\,D(<02&71W]3D=*0I3^
M'E)MTA4,VJB*ZZ W'*%>QM[OHQ(>OL&#$?X&K1@(F>+XY^7XR[IM>M>IS<X)
M _]&M:/7J;WB'DVZ.H\LS09SESP;%S*E4,8L7*/!1:GB*:36_#6YY':,JA=>
MDJB_\@'Y,O^&RENRY42&VI@%Y;L!F6Z*VUT171@@\C-\F1,8[$V"JHX\A:LS
ME[:.W$I0P#$-E+LI,PWEMPNU**P -B.J-&9-N)+%*%"IZ:,5D;B4AP I2A'%
M'+LD-:35& 8@&NI$@UJ2#%5&8F$A5NNB&PY]UP7.!%Y9D148.^++9)K'E\?,
M&;2?^YH,]2U=MICV<0-^=-P^9AX]UO_+4\;/VH$NCN!%:Y(E\4_\I^XO_*?P
MKE9O'+X):L\*'ESRU858E7#QM,A&(<9[1A$P'> +T<-1":I]SRX\S*JF^!IU
M2!3T0<\RATGT@"A%GV*W"?J5;]PX \MT^PB93MBXDGDQS(F!:"ACUQ*4#V1U
M%S*=56I[5.#+HA=_\Q1=A-Z&XC!_H5\. 7Q8_3MX(L8?2-GUUA'+TC''U?FR
M_ZP/G&]!S_$-?@%\JA2882& /AE\[3L">A<HB+5 @'OX613]C#LRC<A>IIXB
M84.SJ8\N8SGDO"@F2SZP:$?H"X@PTD/:@0+]:.['\FBD>\;;/.*FR:<(:C5V
M-,PYMR,V"=@2/C_HV/J':NXL,7-&[CL26DE2^)\Y'^EG^BY3*>XR;<,M8_/<
M<!H*-L+0/#H3TAR>C&6.T%HT_3_5 IW9^:^KVRM):[>JE=RY-_E$]^;H:O##
M>KX&QJB&RCEL#;L!HLY?+RHUA- C!P03P143(HOQL;5WW^A!G&W4>;@>YV&,
M^]M>C/VFY/\NX>$*'^'A= MT9MVSX9-^/JF=M;@\\7",=\6SSFSX7=7$'TKE
MJB][O%M*XMT'&]^\9Q"J(;)9WR>'YOH:6<@\VBJKB!G(4+_H(B5T9 %X?Q-M
M&2ULJ;AO#M%?0Z&%7">*-D*>CCX)[>A3! @8>9HVNNH?# P(5CRP=/3<A($:
M^M!F+AJ-UIPN.G(MVT4BTE, (R_UW Q>\(RQW,#1 OHN\=AB1L;:#H Z#51E
MO2?.7HEZ@=2/H6;;V#7N0=$^:P80('N4F(E#N*KO-X$PC<S 1PJ/B:L[MO=]
ML-UH2E=I$^2CP+5A.@RT%:#J"'5^;+BH6.\:XQ/HO]$9R YDOBDD%7+P0+T0
MK>GYS)&?'*XT!;*%X;1!:3MFL >FJZOH'1:05<^0>78-95Z?U R2VHD^1'(=
M9Y,':F%,RVL84 G4T5!U$RF'!G,.?PMY^.A; #\"G,$J.',*,8&RBAF!(WV:
M".+1$T? B.ZFZ_5UL@< .#C\CW5)%8U:1/OSC0N?+HD;]F!> 6/714FUD)<0
MG7SO'.3Y"#LB?H#F$SHZW2GC<?9;:JR%G%PC)XEHBQHSVV9A^J2VYRPB*+"&
M\@L\B/Y]B27/LZOVR8_0Z2W)V)S#OPODATS27'"TR;9]SYFNR5U-QR*,A<^.
M@>%Z2Z*C;P2>7@O@_/PY5H0K$3.XCZRZY$5+,@%#]0SL)$LR,045&;0NB<YA
MJ80$DJJA %MPWNPH%K -[CWA@>,.1T'T"LM*$LPZ#G4-QG4@G+-0HE"E'L*8
M?\&@%$E($H*7*;H_O"L'/J< ;8PR#$D$@AG+NBN';@Q($L>T,'W\W4+B>/4T
M#/8^A!X11 ^4N@X?=FW0<W5(B[%'T!$T,TB44X/XURP$)@)$-XW^D8XE&:'A
M,=/$UQB661$^0[<AZ.GD0O 1AL>*0UF(AXPSDX&F8,&-;@]4N$%\)@$U?2:,
M4;,4IR9QE*(+PGL*?6QI2 'PKIUE2,?P8:DI!Y-%O#O- ]D<:8:'77BHY3[^
M*=I=R;\;I_BZD)D>Q%*XNL^^X8OA=:T1GX//I?"12(0%[T*V!\@1'(D[$YPA
M7D.:,(GUJ!B]B"U*!KKP=+0F<IC@1&\9^;P+,9\A,>^+XP%R!1O ISHDE@VP
M)&:9QEPLXB((#'K.5-8[+-"DQV$.+5#V(JL0E<3[ WL^4<B"W A>FD$D&P('
MXH(0V7S>06+: 0J*S&=/K$F>"(.J4/IA+UHD>Z(4"V]X$9J";S/$MY"XH!?A
M5E0=A>T4I%18@;72O#V]#@TF%/!%7 =_A;5QW.,4F4GPQRBL-8", 5D!<I:I
MH#L/\H3I6BBFW97190F7[ULF"<GW- ?SB1',"2'"F9R!B+WCN9V]9T(IC)RX
MT<LW7(B=$[9(28C(8G+8R!U&WE#RWC"WVIRT#Y=# 4$3W6_(+E& A>P0U-KE
MZ.*X ?^GQ0P!/'0*O#JC_C?_W/JJ5*#4*Z:-7V#+Z-8OH3P81 SO.7(?>!8O
MN1O4(<H+P [S,0C6.V9PO63P'@U'.[V7^#95$J8P'K %"J_<X+4E$Z\60(&>
M]]WWD'(DZ<<S7@GAY%<0R+%$]6")PA2YL1=N3 \*)5H$ZKW0O_H]9.-7NC;Q
MY@]-0W-POI3:QZK0&$ 3'SXSIT:R?@AV!%!JTQCQL:Q/D5^UBU060QD@J852
M'3S%+:ZL^K\UK?EDIN !='0P9$F_;N+C=_8*KW;\]EL<0+8P5.2[V^!H>M^5
M4/ )_NF8<%\(,SC^A)H&C=Y[J"+7&XIJ"9[@1&<3GN$C=%TZ4W+ZR0E#04:<
M.X@$##P[2!FP(=7UQ<M?Q8(#6FI(./AE5-B9@PL $>L'63J>+$#LK&&M6S.8
M.75A/A\(LJN.0L;R?*Z-[ZF=TQZ2O&_SV7WHQ).T"/3N\$7H9'7AP?,WN*#T
MX* D/-?P=_ 6@%L+4J36*"=^O@=\ 6Y( =\ :2=;0:X(<C=&<%:*X@SN"]&H
MT%;2 Q\$7\ KOG(^KZI;E(JZ17IUBU)>ZA9QN-EGC[R?IWV'SJM</.PX5_:S
M.MAX&@DVKOI99W;G#*WN^<4WVU3S'&*L=&9JU;F].Y<FW1[X\+D51(N05VL.
M!45,,8OJ43QVM,:A&GDBDKO#$ETIFLIV?\$R9VWT7Y"X=G75C"2O/:*_??.6
M+442@>#G7L(9<W<6^8M\V["&T*YER><7U_\K#T>?6IC37#WPL5SH,DJ5QDE)
MR!6+ZBW\5_N_"=[-!#TIM=)#NT%6AG!? ZAIV4R[T8Z [7T:_O@'"J0;T!X(
M\O6"IW^TP\="^PPKGAIQ[))/)X"$94E&FV5B0S02P J,1%\G0S] KA\9\M*S
M:2$]=FSBS?N/0BT0)>W"/Z#1"I6X7N0WD9<P"2]!^IE!H)RRI0GRM5K(0"4N
M<7\M8FEZ83#D=QB-H))(7.>6AC6"T+8EJG: ELNSP*TQ-%6@^_YY[YT,-CXG
M*"TX_+0$K4,?!-4+-."WS>^;+(A2[G7<9,CW N#O%3^CF7C](VH_R2TDQBS0
M-;\D8<YX1ZZ\4J#+0Q#@W>W'+2*+$_>*%X,Q[2"6#'!''60V#TQL/D3"W7!O
MV(0F9OT8^!YS1 IH@.I:X(_'J"D]FZB< 04E2 P(*D2AUY^)ND7G<=#3B8HR
M%^3$K!?F'GK<\=[-VKVK$4)<C3A%D6KL.[+39RPM_U%G]N6)YW[^?/EE"WG6
M($X[,_O4X :W[N.#V__P.=QQ*6QS<(FK [P^!X4:<4#@HQX5"R@F%"\S))M0
MAD1 N;EK): <<IH!S7.?X3@U%'>1,#4:V86C?4C, \9<Z;WTTD%*.!V$2-B(
M1.[+\+UX>2R!H5S7;'S=(8>T$@96HZ_K13<0!9NXQBT_V(-?CV3Q;Q>^K0>O
M$[L4.*F9 :J$0BY.?#^BK*KTCE@2S$]RN7KM,;Q4+;]1'Y/@I2VA':?#G9=*
MXT&*E"MX4Y#KS$P-K^>%]G9HHQ1O$EHM0>PO"TP3+"7<O9 K'!VH[\G_L_>+
M9J$[QMFK@Y.KO!KD1]F":':\+-?87=.,W#4K?]>9/?P49I?"/7CY7L_S?=/L
MS)YY41O:OYZZKPJR6/%N2]YVWVUZ=FZ GR=8O3P__ $*7MF*LVBDBP6>1B"6
M.6\:@8BG$<S&WX'Q[)9_UJ_X8)* MP8S"0B/!+R_SH=M3^K<V5PLPUB[@?DK
MUNMF,%J$-:'JC$A@'22F&41*\B-76C0*Y\GPT$]?"@5V\$LLI:$=><SX6XD"
M-49Y.R3>'-0L^; CH%!$ !5KXFUYURB\'.3P!@ARC,E=W4-7&KJ.@(&30DD"
M3T(( E>(XXCP!/XZ6E>.C;Q8U;D7J_"K2,.ZZ 5Q3<X0$TJ'((EW!+\'^)K#
M:1@V25H#$'*RK/>0B<I2R77JU3X38GFHP%J*@BPXV=-)9*_O>Y 6;=MPF^B^
MQE2+HA3GG*$$/[RB7PW)R'T+ /4(4V NL01EE>DRE'W1RQ8%72TPTF5E+L,J
MH*H:J1J/AI:(=H/BH+X.-RTAXH0)<CT7UXQ[*TUQQ!UK>6A]^!#PP^]ABL)
MLU&BG8+Z?A!(<:8O3IVSS&<2U_93)!$\T'0.7D]2%[Q,";5$M \O,A>\P1T1
M+<9;'@7:+0WXV13>TO[+,,YR*D??HD:GNE"CTU:@;N?JX+87$W%7/I7ND7-H
MB>U;GQ/V&R[5F>DMOC>P;4F<:+E144A"4&"11(]W<'!"#O?3%VWM%65;. /;
M2Z3_ZAK 'W8L8O/C8T[Y-J:PG50[L_OQ[\M?EO9R,NPF#W?Z\-EG%E+>1/#G
M\PL3,(R/DGT=LBC"-PJ+IB?*^@!J#04TO;E:2<A:-@EK<<I54N] ^K/8X080
MWO[O _\AG -6KW22%+G9S;>>_OLW=]G35H]^2C]IW=\8>LEV@];?#BD\F;#%
MS<W:F@V:PW+K[N[^VWUM#TA9&)V^#5)(J_7E(?PX!Z;%Z!KDB1]6T")IO^V8
M7-T,@.A$NY0;/=!1$VDSBG__4&.6/&"1_W-D4(;%2FR"9%E<[S!H*(KERGI'
M:W=&AF (G9GQ?"KV!:?W2PA+OFD.C/3N9A'=S=X,0V0)=0'4L R<!-CSW*5Q
MO'B_Y/^[<@*)G\WTWZ1,J/\L69,38X^GG!.R"J=+9H9P_!'";-1X$&G,#!%$
M8>V\D)6X23XVAT!Z5"D]LH%RI+T>#315!? 9R-F\]MJU=(@V_L/GHT#5W'*G
MB0>GEOK@A.Z02]MV@>J?HOO[Y\'UK?AT5A>W.$6/R*FS6JB3G7A0$&=0DF\,
M ^6''>:/U2IZIN4.RD<FCLT/6SD;Q0J-29'5]>.[UF$IKQBN$@PO&W$D5FG@
M5]H5OXDGMYKZY+;D*8YJ=K0;[]"J6F?VV!JKP]9#CZ\-]G+[Q;>T1 FY U['
M6.]D>[ R0UD%7L[/XFE/H4=L/KLKHM+L-*5KR3II1[FEH>26TH+&R%"1VWS8
M'Q<?TK1D+EM!QA0BB<9<3UZJ4R;BSEKYF:]/*+V7;S^-+U_NA]O(I27ZQ.I!
M[4@K1YU'ENKC>YD.F$)]W'"5?:GRB=)$VFX,9$R5+Z]7Y9>,_DM[N/]PVB4*
M$8F&&<;7MQ[;F$[=":<TQB.TD?!10^K,3/!%LJ]_7GT_R4_OMD/D#4E!@NK]
MQ57[XQW 0>@I"K:!L6:ZMC[%<\=Q2_%[&0+>6Y.W>MX!),1]=+3-:IU9^^;T
M8N)R%U>"G!O2)608U3LS^?*5LWO:]'PB(ZV6(,/KO.>A@T'X8 A"& \C^<\\
M@NCPF3FW>SC%;@,\5,096 #,!UJO4?*)WZY,G.MT&R9\_B>>Q%3=\&QX"E \
MF4D0.*@4_;[HGBAM[;FF!,E,_J)8;0EY;(1XC$P%8!RR\K)K);T46&5PD'\)
M"[X^B8;QS+$U24RX9DB*#NZ>A\''63JV;2H:SO3 R3'S2$")('X'B7!$Q=#K
M2>$EWLPW-0Q+3BZ1#YMT])9UY@P*Y#XPE"ES!M%B#J%P;ID3E+2%NT%[-2^7
M9V>M1E#U0LABX(9W07<'4F;SVY4MU'C<[)40+H_AVYAST(57.B1NR'$/J"-X
MVX6D'B+V<^'64)-$E>0(^5OS=XMV9L^5S6!X& @FR64:P].D^E-Q/!;'+_-&
MZ[BDS_/\SN\M9)9'7HN!:F(V)]4J)UCM0?%XQ\]3D\/N>2RJ&'O&/=),O_\T
M"IGCRGF5#!C S6UZ$.X2@=C?$7[?0%9)*TNOL1=0YS.4T'P.E-*C#;NN99/L
M)B_M!_/$>GC9H$++POTI<=-+U+.D,;(T':+(:]!-4H>B[R$;15W%2/XWZN=-
M'O8;:$28-6Q3YI]=TB,1]\GP&G9[#:L(DV+_B)>>!Z @U"+I(01?& !4D8?+
MDATH"X"-5"@\V&0QD0NG\:M>LSI/E,QU%PNKU4B2O1SI7(XFDG0QZ0@>9!OR
M1Y>\$AYK_ 7*$[-\]PYI#C#7;R7(65\R\K(=33J_#?H8O*?DK+UK? O9J!#>
M2"]D"XHOUR!9@'::ULJ-B$F_Z5*=F>0^F#<_GT:U;SO.03R$CG?2F7VKN^ZO
M6^.A_DO!.AX914;\RW-=O^>0D7\5[]U505\:I1LH\7 ;6GB2*N2&/6^T3_Q
M4J/]@+^!FHT_"N^2U+T$8@EW%^(_W05]5)ISA3SD<>^A,R+RF%/-EOM]"_2Q
M+"N=1MIZ_M5VNXXY@N<>ONRH4O[;TQV(Y#XQ4=ZU1@)=N"\1RH-]P)FM2+;"
M2\*".R(=ZB*KREW3=: @'KGP(E#"&26DQ#9HX1N(9-+V2K70,^C6!BA_%^=E
MDRI5T\O'QO/?5 !U#AW?=F&[8/)&K$I/1Z1=:;#Z7V$Q[<B%&H=LDP?\=IM3
MM@2&(]V< B]/W;!)%2Y\%40MTN[(J,$A0OG,_POW1$.M..&??Y,T^>'0:V'C
M-7OT86"@J"3AAK]L%Y5GV[&N8$S[ A>+-]@2N=IL@'4C\I(QT,T1(KXWU //
M%8DT&@YI@NN*@Q);G,).6A!'.D][M5)A1H#<0XI@T"&9J[(E+[DSF' TW' !
MQ,72,7,F6RA-735'I(T0[BHWU)P%#0I^H_A3%OWR:]\V"EN9DIV1Q''X"W1:
M3-(^:6U#@7<D1MZC7 QX!UDJ2^5B]8CC0KE(^#(4A'_=$SDFK1-B2X]/*2;2
M^JY&>M7#QX+%66;AU2PJ;2 _)$(2&COR6.O[R=1>I4/0QL _4W,BT\"E A!#
MJ.D^5+F!08R/$ @[8KPL" +<4M&O O%+.U#1BO]S9!2A]:(O#?NR>[_$ZO?"
MD?<J'.S-I<]RZ>'U/MM8/)5\Z<*2T&W2#>.WZ-\. B&UB*P1&()WDC)9/)]T
M&5PK92(1V+H>>9JFD/11D25A60C&] KC*L%8KON",>QK@,_ %Z#V(]*QQE5#
MZ8@,7\UVL!O!K^L+BKM,[#(AXR)*W@'GRYQTQ/$$CN@#<V) LTF/3E3V!R4-
MKE1#>"/5V-%^),%;@>?2(AWKC9BBR%B:_1+IWXV[9(XC)V1.)(4-48FW"U4<
M(FS9OHKI?SDON-#IP(Y7W+'00>?=;S#N#. N&-R1%4H$KZ+?/S>E4'+ 6P @
MAP1V-_A" ?F<4"->CQZH+2/VF2T@PQ]<B0YW($1]Q'CU_@@]J(>;(MM.K*[]
MN'2_=+NH2H?!%B/#?63:7J/$.X35!JYBPPX/!$ 3-1@X1PT&OG@-!LC/^(\!
M)YV'[[_TN^'XR050U)2: Q.BZ^C)=*VC.X3=4]!UHITU_#6%CPNO0_N[,8U0
M*$5>=A_9K+]$Y2,\3@[S:"'Y:3"W_@P N^1#>QGM"P'Q3WY7_8A7ADQY1*9[
M*].C4X P36HY8R CA7UQP>!\(4Q T<G\=8IN$OP)U-3A"TK+K@%R@O:NQWN^
MU:@>'[O]"&LO6SS5_<.DO']*:^^=]^1DR_O%TT8NZ%0WCQA1R66CKZ'A%D<7
MIJE.T(SKH)G4D>?4UX_0$+"VV7,FB,M#!X1077! E-8Y(% 7+@NYE..#G7JX
M7-I[!ZD'#FK1O<<\?8O$*F)08"7?WXSG3?&WA(\3[L7M?;%D8_#V );?M<SV
MD:3Y#Z/^:CZ$X<S.<P!4E&!$O!_>Z"S+JTM&P@\).( '5;P U&<-6+;?VQR2
M@R,TNC3@[2C['G TH(H,*>A#>2/[/>P\/X8W%\J/K:S'8V@TR*@C*JI/QZWA
M2G[-*"::IUV@5C<^V7K>WMCP*:^KO!I,NG'@&< =O3T[S.N,8\8)A+U/AH)B
M , ;] &LR, 5/\#0-TB->V &*1&HP@$RI%L:OGZ"W4;\+ENX72"?!"K 3O);
M6N>'J:R6Y:'QMLKRD&W?2IVK%)&76FA;7 VE'?PWQ=5PB"2+>$U_FM;/M:+U
M,[W6S[6B]7,& J1[#Y@N3J#U#(9F.-0]C-HL"9.6HSVVTBW0F<E3X=M5G9]4
M;FIY2H7#4Y2%Q2G*YYW9Z.>3('"O0TD340%7,'^^B(@>G&IX=#ONC%1";@<T
MLSH@#VZT7-#F,,!#>X\D&@FL9^Y%&F'+BA>V\+.](L,?\>!%,#<$$JEWYSJT
M"%3YB#1#PF1';:^#R6AM,KL#T_R818%B"PPU8)6\,(1%PK.&Z3LREXP"Z7OM
MMZ'JX 9S39#.V39=^/]DF^2*X?0N9"M 57T"C2:HHYH3PX?,:_>]P)"E:!_Q
M\,F_O6Y0<OAHZ'248Q-71KJ,#"_4JAHE6VFA4>G- <2I4XY,7"=>,RA<8:*;
MJ-DT*CH9E  9(>1-9AEI(Z"C9MLC',GVP(FX K$V[IDY&*; _:2$MX%G]^+4
M-#Q7-DJFP/'JY2RBK %X>46FA^)A<K@QJ3,-:N60A="#6ISICQ$=N9X5BL,D
MKTA?P_J+[4!3H>^@I(4(IWEO)3"1[G!>*%T!+-.U3!DE;.'A-HJN 3Q.4U8&
MWI@G3%YHG4ZA>8R=M-B<M0#.$E! PGMT("/S>:"-@N&./O\D,1PTE.')LZ;'
M3",(K^E3/W/1Z_@-4:AH(S*=VD\>@RMT@0%(MVXT("<<WV,G8MUV<9-S98"[
MR^(VJ>BWX%6SL56U;*I/820=J*^6GU9">O4%S;.B(@*E22YD:]=7:VPMM-IM
M+R*4SKP1W9&T[6JY4A:\+CWX7PLK1G[?@"S4Z?@9XJ%0P](O\AP4?=?8"]&9
M_3QYFG&"7&V[7-C2<G&_D;VN*RC::*?+RA51CE3X+V]+G10[FE>]:S2*DK@R
M6^&3BALQ0[/H,B,IK0L,D*2R1X!NFK;C805*\C,<%(N$0=#7=D>[7.0&RCQP
M*_RXN^-;G-;J!SR 0S=^@OD6U-]PF\OJS':COD"C.)FMUFJKJ@6P$VS^Q"!I
MX.,.]_3N3N<*/(+,;T\A.RZU(!*.Y@2*B4<7HM0R#6E6X01D],X%3A/"PI!'
M\LLF^6$C^-V;<-)ST[E\?;B>RD+ 28]+=[*RAF39-O;#*33J2OAJ4N$IX9.
M(RI51I6GMN<-CJIUR'K';FNH.+!A[!RJSE!/((E->,@X#F"71O(4.\UBG.4S
MG.<S%L2YU\V_8CZMW^O:31R_CND$$[[)D)$ @T?^^'@<+B@E7GP\?;F'.]2U
M+\].1^:)^K,:7E:-9:"]L:1:K(BMT>B-L$+X1*<!!2:*1_@4$V<#8RI:$A&9
M(>FUO<%M0E&>@AHI*B)2*Z<J7>[U47(Z?1O0"P1Z8T>129AX)JLY4$9/3Q5;
M_E9IW/RNO$=EM+YW9?28><!V?Z/=9&KE*HO'='DC7%&P#QN>0R C-_$P4@X6
MWLESY]Z9 'T,CG#A:LE_E%Q<J"0 .5SF+X=CYM0-(\+D%VQH+*%8]U">>J]#
MUC\9DF5-O;O&CE:1!>'J4"ORTWCAYYHU?X$%4\I(A%&/#&7QT\C(3'.OD;T_
M+GSY$0IZ?8>I:8$-_^RJ?9*KAM'AQT3)TOY$WQX9&<>&HWN)+RS8=/@K.<C3
M\F -U3T/[R1[+:8YBN])!M..N]071G"&K< 3Y)5],HW\M:RS^%EB9_'TRW5F
MXVZKUFZ?3'X9^8G)H%NG9\+S,\&'&VN>MCN$P."Q30DFT.)A6W-KO9<^XR>=
MV9/RY?RLT;OX]2"DZC/N8P[?3&CFH(^YYARR[D-DO64#\OQ0(AM]TZ7%ONEI
M^PYOW!;WP^>E+/)QZTYHD7Z]*?L?Q9=*W7IYIR:XN$']/98J\\)GKUU8 XVZ
M5EFM4<]1)D(8;DE3#FSA/K=$J5JV+B^G(-" D[;X(0[U5BUX-X%ZN_Z =1HN
MN*4Z[XY=:\-F4+F1<4EZTQ\BZ>XBEH%G+* P,LJ1UGJ:UQZ"A*[]D#8>GAN=
M#$GBV51$8V2<PFEX@#NVY:#>/$%J([&"\:=M!1@H4ASVQ"$EAD#U[5_GVZG6
MO.(&54=)W2H]J2]Z*[0Q_NU:_T#X?1W#_Q.+2?+O4-_86,Q3PV C'0;O(.)L
M""CJ*Z295@M;1G?!T$FRB]!5[*/UAWA]=JH.;V:U^DYHO0X-9Q^/I+6CA\C0
MB#X<)L\BE\EW^^?YV=FOD\M>?Z=]DXT!=:^\E-CM\V3U%1N*A,N(&,#N&-OW
MXC8,]2H4 0TB 5!T"WYQ!A^!-CAI9'P9]/!_ KU)4^]^T]^DB3'4X9#''LDJ
M$,*S71?LA8Z1.S2(KU>7-X@_5._NM*"+^05=VA;TQ -TNJ\#1,H!R)-WN$$5
M^F7T&)U\N?_RTK5[PI<7>DUW/<VCRB<J>5Z[')L)(=J#+;!RU ,7AVQ;19PZ
M:5:UX477:V>=?A+3[&EXLRMLC:MD=/#&=F1.=\QKY3*%Z1L9V&ZFN7J.86ME
M&KE E!DV46:7WT)FXPK'B+1N7%\KTLVY?7^^G\%%BWC $# >4"1!=TNMA]+L
MC_WBFJ[XK95I.%:JM6IFQ[2D%:25[*EZ&>6R& -1F4.S,P.MG4-#$U\M"^6W
M.-,6RMOW[+_1?&[<3'LH3^S'G_I52]WG["D?%-8O(O#M/PS/N^'0I1BG+0YI
MY%K5^*2VT-F0*6G%8>T/%H=;,5N,CVA8-;OS4:)43,JJI(&V2"^,B!QT[ON<
M]"#=5$;U-U((22-P5"/];C@R@EK* H^C4MFP\QBY@PL\;L48RW<O\%*R5XQS
MJ(1D]S: T$\8I:HG0]0@*$](Y65$RMT^W7R;\LY@_%#;I[;G \!X$!R$ W%9
MQ1[12EO"T3!0Q'<@X3(8S,@<?\58A\I4ROV(N.9^1-R-Z7AI[6BZ".J%!1]K
MX090<[%-V544:?;R0Y/>2*LC@*%4C1 T;.R>GS2]#E6'<?M19]=5)* M&VF8
M*2++B[F7COR*0,K[EH[;LML\)_$T[ @:G+1VE#Q-W)%'(G)Q+#5^#V]K/[1*
M=9]ZX!WBD".SA]M#RN\KY$$>H2SH>"K&"LO5^:P*NC53GP] H:VR[&)DJVQ%
M-ALB!GZV$&6H;A-E^/L/.EDQ[%.QG 1I'Q)=W&]P._J%EPS4(I7R'>W&E_:J
MUID]GEYV^?.7V=@4WT@1]N!AO,K]]R-6UJ*>]IU P[KCV5I]&Y5E[U(EK=Z;
MO4!/7E@NQDTT3*D=N6F9[KL77V@2ZBP7J-XXN:A2/+ON@K;SY4$$^U2*O?<'
MC2D.PZ;TO5=K$$U9*@K;&7)+5*X:EV/9*&0O)I0'IHOQTW:6UQ[XZ2W=J&U@
MC34%0!,(&"XX!;AS9$0DSLJ_!V=7ZKU[]59JHP<18Q&0T%!*!-,[X==$?-.6
MC-N90\N,42ZI(=/!16.6R47!H2"(%+2T^OK,[7=^/6Q,OQ@5MK.\EIRD"K\-
M/59="F?[N12NT!B:R,>1^T"I-!J_&B_/7X9[59$Q!-%2YG?"CW',TI;\V]EV
M2_B58_D470C>K>S?F%84Q'ZE3"5)/;-1SBR>LQ@%J)J58F6' _26(O]$T]&<
M3_O2.'M5X)JW/=3\$P58+;,W9Q'PXD65?^[_X+K\FU@$GYC$4GH?8-35$V"0
M4<H%'D-/ILLAL..H3MUKP'M^D^8!JT[")NN\\4E90WC*%U2%JI%=9>NU]4&;
M!*(G4>[O'#-+6D=1947Q6$HT[=C$X_"XRL'!BIT9NN;\'LY,XD4E["GP>0/@
M;70?=EUP)M5Q__6^H>S1(%ER!Y%&97,=F0S@Q/)<<GA$WBZN!8E)^X:A$2P5
MV!JW/H'F3Y&8V6('&E96C4:2%;=>M2\XY(TY)$9G&J%N@:T+ZX,Y6U!Z7[>F
M/]A[^>T97IX#W1F,1F?RA*XM]]F'(8ZFA#:'*SAZX>G5G4K3_6J?++L.]93O
MNBJ=7&:16Z\0IB)%CK-N=J8<A6NIRE/UWJ:XGZCY;E/UX<L:W6+8IS,\JU+?
M)ERZLEOOX@3G2(/^1KTS^ZVI-X/ZS<^)'G:>RV-CW]QT)4;C 4*GX^K)&N;8
M&Q\"(!A#/*XI,JD#SQ-)U\67F0 +X'DA%I[-:C-]C_F/2VB$QIP=&HYF)<NC
MV2%X&*MCHF["\(J?$5#1X \\K0 U(T!'D@WFM4+0O!&NWGA7?V+NLA*WDC<H
MESEQ-1V/_VB:*O"+WOSQ30,9C<"-S/ER;=!S=;CE'EXS/LA'BJA$Y_ 7#KC2
MQM%:<"P1'O B5W -I-^HSI/7;SS28A<^#B+-=:_A6D-WZ#?-?7[4>F?/JO-\
M4@TZD5_&L,BB42L0@",=0<!&(5\V^&#%E(^$6V0.ICEYA+QZ'U77F@(Y?FU4
MXV,_TF#IPV=^0:R0P^A,3,0E<3)PVY!!64\%^35*!?/'K/5=JS6_WW2WHL*F
M^(Z^/1'?$WC:;&#$4"YMA_(>FD>&*&@OP?TQ%#F \88THZGPC(C_XKA/C'_5
MX:,8OH3,'L=3@'GN$YD7%0ST9?"XX"$^ZN]I=$X<>Y1'Z=2J]3B!+XTQ%*^F
M-3W5;#16T+7 /4@<F3/7S6O5SSJSEY>;+S>5J]/^M9*;B_O?+BIQ!J7*,7,4
M$Q(UOMR97<-;;/(X^_DZZZ%)[&3[>,BV 9R BMW/>YV%5!-7S$(*:.(EC]ZC
M&W,),>OUQ/E'JY?HS*K]5O]R*NEGER _A(T-]JET9@UE_-2:M'[-KL5E]YN/
M$W1S1ZC]E@-[#C8/HK;Y/(@E=FZ">;UC7_QZI"]^0W[XWK\3#4$*YS-M/) B
MN57^5]< C%!F&=P0'X]H2^4:6^T(VBMF:GB>(\<+7&=6X\^4I]GTV_!.IHV9
M4Z!@K8(1N AVJC2PL[:+;B">[N3)-30Y+ U:KJ'?;RA?7LQFJMV9N:[8_'HQ
MNWEZVDLNAW=.Q')B8V ('#/TH8OCA>H,H]C36\T.2L1I>O>"2,.]P)<Y%NH7
M&6T@?BA\5X\X_@B5 \WA>[N*[)@/K<JSG+3O_M>-I).+QH%?&BW+1%Z&I*/[
M.K*>3H!T)96W&=N1.A,7P8%RK$8$DH/6F"<C9X,S2".I'HIS7MS5QY=]!"8?
M*BJ5R!);$?=2:W^6=)"096X/B*<X\2#]&,\:[=MV7]?>:OZ-#Q)VX&7D2,VA
M:8,C12?$*O#9;<Q."W^))TJBD? ML#R_:[^7M>V(<+OUB(77'LD6:,F6DWBH
M?DW.U-^V]JJ_[+6_$ ;"QAXQ64&RS#,^#\@1R_&4_E1)VT4"8UPAL)6=>YKD
M XG)1XN*QEUC17$O9ZL<)O('0J0%3P(T!GUU]\(RDW6_GU].ZC.1$_GVVPPO
M66)S>^ &1MR[RV#"2<$KJ;/!F:;1I(AGA=IZ<^3/3CO;DFC),H2&Q<!#.;R7
M7,&U7?,#+'B2)$B;'CJ>*($RY68VD&XZLU;S9MQ0J\\G$V7W&WO>\3OG,O:\
M6UN'WG'.]5Q<H8\VMZ2J80\)9ZG]E-LKDYN*%AKYK+S$LWR*G"&:.,HY,9)%
M!I7^2IS UL7UDGYC'*5W0/V0===+P[*!-495X-&&<D/;%QR_]:OO_=E8'7P[
MJ#)R!;7_CX%@F#*RKIL3E)F2XPMN3:[C<EJEEQTU*CFD*3H;_ %E>'3)E2A=
M:C0LPTIE?8$XA0JP9I)8F2_?@GJ()T7<J]%)\^8'#\QMI,@2AT$B[^Q9-=&6
MI3S0BVO2"50N"=KLN.IF=^M&&;HU&B$=7N+8:GV]MS%=7'8GE:2@]QI91\5B
MAII4==OK:6OU*LC=7IFZ7>[,OMDG%?WUI:^WJ[E)%,IUZO9"VAEX5717!9__
M_7]'1\RY!G3U(].2^_ R:(/?+H *Y$>F_HE!=S;\%\\<'7D'4]7&:<\0V6KP
MO8@!V2AM:7TR$E=&61:+^UV>F^28HR1^7J)ZD[R6N==]F$.:CZY/S/UT!-_?
ML.2NIGS" ^X(2F],A+UZ]$?_^+]"WX1GR#] __X#L9R ;PO(+T== *4#7'J$
MJ>7A&&[*1W# DQ%."[EW-+=X%"0$*@$GPAYYXO%#'%"$S]P@Z&V3B6L+V>)>
M/SJTG#_SZ5%S!DT<#P#6LL3B: I^VB4ZL_;@W+ALUHWFK)Z;*\9/,JX>!^GO
M\51CKC-3]8O1D]%"#>8_?/80 A<E<S7]!MG,'5" -D;BA&6"N70-K^;&4,//
M(@5D2_.4<\/B^;ZDNY]/-5ON]RW0QX9RR>PQQ+R"&B33AJJ>_<YH0UWH+%0P
MS&/TMN<=F)79[]%2AE2_[\SLIC"SOW,C8]C/C;A!]7Q-<PB7FS)JN$VXA@:%
MA(W8#>H]SH!1//%J,]UIT*'8(G6JV.X9 F=@JK@*!_TT7D053=*%M.X""^$1
M57@C++9!']4&VQW7^Y=7/<5!R1])YQ8OFV?NUZ^\I$A!C119#"7A6\%RC$U6
M65.:ML1F6P[>A]3L&67(>EI'X^7-><2(\U[ZX7-2#P9\@$Q#G_I;91FOG-&G
M9A?H&B03_M &3 _^U+3LDMSKH6)(0W9<"UX+\A!=%2Q$YA#%L]&MX!I>M:,S
M]6L\O37QA21]L@/ZX])(V1XP/=V<V'DMLXJ7?YQT9MKYG7HU^#[]\;"V_ ,)
MZ'D!@4Z()R+>LA@D/_C.1@T+L>/FBUAB3M%U-2W+K<6W*^IH$/E8F9>41DV^
M$"]^/];/Z[3+._)0Z8*14@V04B5(X9\O^-O&[4W;YO> %"H%+OM$2K63=*=*
M+S_L\KC2'W_K_8F<0FJB J1XG/*L-X1Z[]'Z65.RRBF1P-/*H!%5:;4&L^*'
M%81*>NW]P * &<*'!S8##!6HFX'PEK"VM===(#T(O;8Y'B)MCO<K)3,H"C*]
MU]QPS#YNTXQ>'-F\"W*PSX*>NY8Y\^E]X&<X= /?BIR]\'_5>_G5RSL9X-XS
M+<M47<6YM;PQ,:0MC9^5?ZZ] K5EP<_]Q6V_2TVE^=.IG<Z>E4%EGW73@OA?
M5"P&P6!&" [L=\& O&7U+K]-]>X6I%GF5JH<E;E(VQY"GLY2ZL2\3C2*0*0Z
M*U9R5W5]4+I5 [I5MZ,;C5P?$4VP65^J6]!MP8V[_7FCD;/#5:NL5!4*PFUV
MX+B=#AR-2A>.@[=:>7VYW&[]$J0W4P&\;W&\T;_[>]S3<[-I&4UCFXF8NPT<
M\. A$:D<)TH?6'=8)&OL+%"II^&J4&L0BV*];.@=:VE.HVR'JU=8(<6\U(+F
M;Z*SK*%YO4RE^4*MQE:KU HJ"IKOINZLI3F->B=!%%A1V,N$F$2-ITY%XYE-
M:NU^_2M0'J9O,\Q[48OACZMAI8R?L;>%5\M;9],3@'_&J*;;U<%:=]8F]1(;
M+7Q8)2AV'*@TR:A76;Z^^9 4C+5]5]44K+*U[A1C%2KE5]"TKVZA%1>LDBE6
M69?M5R_3\ -5*U"=+J_W Q7,DFEF6=#58JQ"P_-4D22V)FQ>YK<MJVPXI*7:
MF7U[/;^\N_MNNEPE-WG1NR2J1\PQCZ$Z"ZG$C3!=] 07<^&^7[<C/$?%Z'M/
M^6K\TF3W>KFVO-N[MPAY-UST,IR(<#+UOER6_BXD-G_?:,7.(%S!D1V OO1G
M'?D)U<3I&-'P=T!39W9U=VN>:KW*[$+(#:.A!/R>B3IVH/QKD@P[LH"-L./G
M6=M,US)?@ %EW 1G%_>!V;?DT0"9+PS$-4;0Q[RF \?2KZ7.K-:[DWYP%94?
M:&FZ[U\$Z& B'%GD7A>YUP?)O1:^W4JS.G\G]/>1/)K11)IUN=?&SW+]Y_WO
M7V4NLQFU;Y][_=CB;F[/9Q<W?>I#&/+ *<FYUX+UZP1<O\ST]CZ0DM_<ZTSD
MMRXF;'L3/OZD)-]X)O@>4) ;#BMR1=_=K570,R-W2Q@&VZ#_Q=K$G\ 8OXA8
MD5[V#RH&MJ9'1\W;SJQZ-AQ]L5ZFPM>]9_HVX8^&74W^8W+6$A)T".H[S=MY
M!P]'(U(OLER5XBR?/X! "=DTRPA$:10]OSZ*6!!H9>K+,@+1:!S*":PH%7FY
M.R:J+*,0C5 \I%!9H%BJD'@/G[[Q/?S0[LPLS>3O+KXKK6TF%::>)_. ICBK
M# ;JL&-D]G_'/K1C_$>EW69-9/G*K@-3<H[SY=?F LZIS)>H\*Q0R>FDG_W?
MA LXIS'$KLH+K% K^'S)W;: <QH9]95JA:V5URN(6]QHXAO=:%Y="8[?^O':
MF\JU<'U5O3F[Z>_%Q$ST"F (BBSC;2M((@2<9W2>AJ'*L[5M.Y07">6T"T>6
MDYJ.R5N5BGJ1@ZL*ZTA-PWB6H&)<D/K@&LHZ4M.PPNMLO;X74B<J+P*=ZI"*
M\/+M[O1&>]2%_9G86Y:$["7YEDZF;7:4DQ@C4S'G=ZOLV%9N%>1=6XW!4_$<
M[%:-49!WCQ44/!4WQ6X5% 6!]U;UP%/QB.Q6];!AB</*"H=Z9]:Z&]_+]\[+
M:";E)O'<RP0.A\+0;\5?1]]&1A.'A02^MG.JV8ZE=5U207!FJ->R]0*<E9WY
MS\+QX5LNV)G]N!JTE!^78OLZ/\.GMJH4&.+MOY?2@')G=B]>36=/7._[;=BN
M>$5G=I\OF"AC,"=3!K(&0WCC+>L$BH3[?23<_[#JE^7[X9?7']J?D[VV+N'^
MXNOYE\E3]4ZO9373[>WS[>\O.*4IMFK:C^J?R"C)^?8/@L1=BU)C5J:>*%WD
MVQ?Y]D6^?>;SEC,JN+(IBW*PSX*>N^;;5]ZLT>8=L#45;DF3=3\MHCI^.!/L
MYDW[?IN!\)MEWD=>_\<DIB[-;5B@1<R;0261F!?92KU>9!+3R%!81S J><7E
M.EM-$=,L")8BSV =P:@TVN(J;%TL3AB5;(%U!*/2]+Q>8ZO\^BS>[*3NK[[2
MF^80+J)$;O0^5Y\HHQ^WT]XV4S.6)!@DZF#ANXL,F6W5@#C]8BQ/(SK)B356
MJN^EC6I!\<WUB#44IQ&PY"I5MEYDP65%$5E#<1HMT06^S@I;A*@+BN]%DUE-
M\0J5['4)4KR\7I')6'-L_HNMMD9.XWRTGYE>12;DH3(A*S0\%D4F9'84EAAY
MJ;0P+S(A,YL)6:'A#RDR(;.CC,3(2\-[DJ%,2+$S^ZKTN9LGX?J[V,]-8EU2
MK^?\I,AU/]];L@I*#067(-M0?U* -D;T^O>?;E[[U+XY3;P/-0-Y.^$/CJN:
M07-#ET;)&0 &"BO-D*TIE!:N9>/NQ5VO)S;+3  #80"&RB@64#6'<4Q&\62.
MS4 I)3-]8 !+UO4I2MHC"7\.^@"^287*N:W9Q\P]? ^T=B#D*/]3,QSXG\W
M?<@H>50V%)1':L%7C8"">GYX+]--),V8R4!3!HQFH]7@E_"M<'MR']=U_^__
MU'A.^@07PX(/M_!&6T [DX>(_;R?#^4ITP4*!!Q**P0E?).&4A\U S_<<QW7
M B49;A6^205P#T.(!!5^"8V+_@ )4^1XMG G9_0*B"YF8FD..#)[/6:@0:Q8
M4Y:QX1ZTGJ8PQ$L-_Q7\8O[%LG\\R+8@'"/9<N#V,%E\+ <;',DVO#]< !_7
M$<:8OP)T^*.(76BK(+CMOUD&;60!Y)$%QK*FHVQ=B K#'$(P\8X-%;X.\X !
M$0^?MH]+#\G0RA; VX9<P:"-RSWX2L8"(R CTLGPB^$(/H<XA?R>Z<&[AXEN
MBAG(8[@1 )=P#=M5%$BZGJL?OR/10#MQO2(M;ZOO"]H;TP'VE2D;=L-0S^&I
M-E ";RA]E^6OEQ-;ZV^\:F?6'E__K"G]P9=!/3=W+;FK O:V@GV1XV.'\B1(
M=<]K\OJ[N\+BV?A\9R8]N\_]/E\_O1'79>,CNF+J,XF:RA^0@R\MIN!G-\DP
MS!JN1Q*HY<9C\\?CQ%;J==KY7$$V)\[MS&X66X@8'B=1<[S =696V_C5KYS8
M?/69-F).X2E!#FM&X$+D["_UK1:YGOR3&A[4"PMJB4W7LB!P'>W2<R$/Y<;=
M37/V\W;:F?TT?]W.[H6KBZFZS^PUL9R0!K"$I.V!:3E'2%=C'"R!$NZ?I:D>
M&[!)2KIOEA^2=C5QF_R1U02>]VDT[-O>4D<5C8 97^=9+H4G(X*_G6)G!8F7
MD+AZQ/%' C=/XBJ5"%E%8"5QHV2Z??0*:?B&\+EIG9INUX'FT"*> C%WX\LY
M5>L,[5#4/77[I]_J:LVR!F_9-P0SYQ4TXCXRP480:>8-^1Q'BO]:P]&;4"^]
M#*O2")956#$%>Z?DZ;\+&FXJI&A$Q"JLP%.;:O[W"I$DKE2U;H"3K&C-VIS:
M&3JA'/IR]3B8</=2_UY^DP"^'ZFW-]"K#M+N<Q52-Q ,=-H#2VQ%7!]F78>+
M?. Q^7!2:=PCU-E*BCRZ'=-I$G=\8QK*\A,YX]NW5_Q7K?+PW'M[=<!$/2$6
M3V*.;Y M6#(DT :GFTIV)UNK[27OJZ#<"GE"P^CD6$F@=MEO-,<G$0\=[3Z0
M+$X@6>3FQ<MWT[H;?Y'V<L&G& *])FDOM5^EF"^^[ BD%UDBC?Z[?*W."M5B
MQ'SF62!1]HE4,CLK',MMT829VNCXE=E$M<YL!GX_G,B3R]N(@R6/D;.W"%F+
ME26]UIH#V>@#^])(9W.O[+TF)?5>V^D%G9G;UJ\:C>%35^_F)XP] "6%;-M/
M:9&7N^+P)^@9.][(Q ]ZX7@7B[(]BFAW1LYL/-I]VIG=W(]^&C<#15#D--'N
M9L@@\WY:_VP4D?!\1<++B4W%RN+CR?1"' Y^4Y]7'38^(D!BH3'?_ B#3"M:
MOK9P>L/ 2=LO,7J8_>I9]O7PVTC99U!8JD*^.O$R]F2'Z0(H3 R4@(?2\2!W
MFNH;EO3S\<?3*8;[\8R+-)QOZ3SCN]7I1UOOM"QSK-GP'0FX\%GK7#P;]RY.
M&^VQN#^OVX?/ 2CV\E#;07RSJW"T7=6)2,<C)O"[#@E+Y(_&QN+H$:4-W_9Z
M=D>["0.YLZO'\]->R^[Q/_;39BFEY_84H%82F+%0<G"0XPSO4P,X2'!!6D")
M;3#$0:9,&5E%.A#*OLZQDY!*@# @[7:<+M'(::A+U&J\5P4+=\A?./-E9>_V
M3#JMG3Q\5>OT9.42WTWD&D85#4LOX,(;M+^4!NEP*0UOXR,ZZ<QXY\?KE[8,
M1-#+C?L@[Q5G?E%D"15 .N3BNM+DKJ9KCH;TH:+N[!# !V21"5DLX,T'0($9
M=^CJN&9((Y$V9.3:'NV ;*'BJY%E]C3'CA8YV=!D=P:1*C1G  5Z6%!D 05)
M2)61;<:&\L-FNB[YOF28#GD&LH6.2KNBQ6SHK:BV2=$AK%I/(RMX(<!CYM)@
MD#Q!DH9E9&9D6GY155AJ9OL+(W#A)29K!M/37O$^- 6$6RAAF'$E%=S+ .@J
MFHPP5R$%WRW#O: UY#ZJ67,T'7[2@W_J3-\T51+1&CD^"(HY'.G 01,8S&=4
M=05W%UT18</1[!Z1EL=,0!H]/"9^R0M:4U;'^+8<R5-258<0A/8'92KV((%7
M5+:%'B5D"ZB('E1!#^ _O#$0I" M0OYA-"P'U-+<@H1NB))] ]<11ND_7TX8
MD,O>!>* T&PI"?K( PPTM7"AH_=G4(2'<!T4,#K:T+/QY[8RCWE&#F65OSLF
M0HT28I!()2(NM_0?/.I.CX(?X3)+I-=@((AN V1E@!".&!6"0E0=@KLH_!%&
M3H*!T6Q(&E1<3DH4=1/>J#BK8^XALGV/)D')(JHF!(8-2"4BTKOQ<?<+&.T!
M@-M_3T5_N0%^(? #< ,!\/G?_W=TQ)QK4")]9%I0\'R"2_QVH8V'?_J)^2'K
M+OPGSQP=>2JOJHW3VEQDK\'W(H9D(Y=ONK$B21M>[M=US%&2"KC2PQN;8A+%
MFH^O3\S]= 3?W[#@.5$^,3=0O28XO3$1]KAR]%?_^#]#7X5ZIZ]T_OL/1',"
MPBT@OQQU ;+'/T*YA^CE(1GNRL=PP)417@OY=S2W>!0D!"L!)\(@>>+RMPAR
M2I5X76Y2?PZLE38,U5=)IRMCFLV(8;W%:IW9+Z@8U'^<O)P[?&XL$!3 )+*@
M"Z#I&0Z2\I4;T_"+^Y$72HE=HG]%[J._\QJRC$?XSCNS'ZU?K0>=/^-Z7*H(
MGX^697;0'Q#+J^4SEA>M:OU5.[MKNI="\T&B'<'+=U5KKW:F]IS>BU[.>U4K
MGT;()U=<W#2O&C/ERVEGUC#/!H_&S_&7?G>?4<S$TM;0NO=E,%;\^4^^J?2&
M@<WM"A%3H'T#SR:56H(Z*Y77-S;,6*/X-T5^8BQ9HM$"&Y[[6IEBE_ZUP>15
M*$BN[ A/?ETT?JO?SIW:1-MGD'G9$8^X$ X::TZ'P@U.,96R\1I;X=:'X#)9
M6+4#0A-/9HU*D7:9K99WK53;ZA8.3*PEI=?A@7RX_G5___KR-+QYHXK'X&A&
M/7%+KN ]L=*:B'D:A*8_FC4JPXXD@:TAK6YC5OH[I[A,/I54YA!54.'C-BDU
MJ[(*I+0G,GI#+CN4DOX\>[IM?^\_4!QSDC*-9N7Y3+@_WU_&3$KR;2 "J SW
M8<N5]0*@:(BP"_62A0X-"XECZS7:[2R6:09^80FR2#QD1'QIQ,,V5QX9"I[3
MVDC4?[EG]O=M<D"W40=NHDY17^1,UWIG5C+G=AE*Z=*/EG ?+A5:A? -I,5V
M6:,VA!)^ML!XG,A*U?6"(Q7.%L3&.Z5+LAS8SL9:0I=ZG>4XNF39+..KTIFI
M7RO*KY/*Q?T+R$V\99?@6-+T(L(6A!?\>3;+PV9UCG[8C-LQ;#8(?GTN:Q:.
M=)],0QT;)9K$Q^HM;KHS&WR7KA^^V$\/73TWS("K!^=B;/'X&LI%\4)R)!,$
MA>4B\;J\AMS>?96@T)G57AY_GM6_GS;,ER*&N+<8XD$"A>;#B78Q%;[TK[0B
M4!@-%/:5G\W:X[/NGE./H+YQH#!:7O1@D S3, ,_J?5M\['9N)A5+[]T9M8I
M?S_]"5Z%W]LTA-PU0.B#&]XF81L6>!K[J.UGY@-5RW&>WA2IT_"WB6R%_S-B
M@QNB/-'*J-.85%5GR[6-VO_NV.0-7KTV5);Q:_QKV+1"--SY">%+COM4 '+]
MA_ATV=SS5.< D!S[O]:ZO]*18@,I0,,!5N58L5[,<'T+(B;+%1JI!A4!WJF;
M#[#<MLG;61K+>+Z1?L2K&9$ORM?Z!)S;O_NF_B9NS24J(>GP%C-1WS,3KZ?8
M!E*(1HI#M9;*ZU9(H=T(F""!.$A#&@3D66$_!%S;LF6C;,>9]IW7>W6XW\DV
MK:1IM+2/E4K]>6RZ>3HD9%(Z@YY3I4,64H9R0B4D'PV#-65")2T9DS:C.BFU
M<F:V-5,7&[_%6O] FHW74R+N?<49(]Q&&2-Y'G1,-Z$3,C*=5OFI$CJ+>=5[
M2B.%9*2279\NC?0-YE)#@:,(^MWK0TLNO\BY"1/N)V8<B2VM"QQ#1JC1#QRG
M,H_W$3A>V'EG=C[ZILNWU=95)%:7=;98$3V.YCZ^UQ!R/.)ZTIE=/#1_&Z</
MSN/E<Q%Q?5\15^WN8NI>"T^3LT$1<8U&7&_%TWZU+YS9%]01\\815RY,_3SQ
MVL=<&F>X><QMKXE:QT0,!T6Y;<H&+PRK!PBPGBSO;I/9(!_.)%R"U_1Z/4?#
M"<;Q/%LIKQ^3D^>8ZL;H3M2_.1H#/CC(Z8*T7@'?+9XJS;?K[4.-PVYY+:&@
M]0%UCT9?U@S;N33&\#/3FIZ;%II6=0^LH7\3V[<6_JT\C)[UFY=?L_+K(WB^
M%M[<%]D@W:ULI@?5ZDA7+TAHU_";?X69%N\W'$*#IAO(&1J.L"H4,^+F@VW^
M3#_FWNB;+-AHI(E4)+9<W4M,?NV4SI55.I$P[NS[5/YV\UN[/'U\SE#H5H]:
M.>^4H5>2: -)1*5\2JJP4FTOX^4*RBV5,3121K@JQU;><#!@>>/*^$#4/)[7
M1_SSEU]G%BA"MH=CT(UCMAR5\94I*^P+"4.[K)\K\U2,XI1E_;0$S<DV!?^!
MK.%FCF9_O=-/>_OI@+5YW':AW/_/#M[N4/ /&9I*SX^M"OZ+X"VMRG](1BKM
M1K:J_-]#\%;JS-RS%[[\I(PG/^NYB=+ENF'UJ6M!JI9PQ'!@ 8!#9.N&5T9Z
MDD>;R?]G/F!73Z_JWI%V\'?!6MXMI.#P4&5^"M]E_4(\'[>LR2]X&AS-03AH
M>]W@R=P#-'\@X=;8Z7@N@+AL#E%E+B8?.Z]4^JQPK" D.7LQ V("+E B=3NN
MU92(S4-4]/K4'H#O0KN>14JLF@@%:4'#>.0%ED\<"D5H$9E3$. #C=U(G$H
ML?!5-ES9FC*<?](L8*/)!]H8Z--CAAQ69H/#6DU_6%.KBZM8I!H<UJK'(N/N
M]^^OO8EX,\@<BU2#PUI-9! J5EN9%1(SW%8<5BIBLQH<5H\2T[O^JZVX8'"B
M9)$2W I*"%2"9");JR;I.?Y1+:4^JLS"4:W&CFI.M8%<JS+_=C_?@:&LH2FP
MI1:P,,>@R0^W7?A.&0]>+.95'0;X!KS>>JO4R(&\1A &@L2C<(3 (7V)_Z)J
MB)Z^0J8VU[]99^/1N3P6 L$7+(/F]P2,8@8+K9-YJ:!);XX+J>VX:B#@Q+B
MJ]4JQTG>)2+?ABA3@<PCLM9L'M)Q,M#(E*/HL @H!PW;0P<9O(5&EFK6L(1M
M91N^PW#MQ2%3.+"NP7>,\$^A8$7SBHZ9=42P&6\X"MPH> 66HMG1E@?FR -V
M#*RNK*-,R:&&9Z7"SZY0<-/"63N7D 9DOA2:N K_#<^ @2"PR?"LD8F^UV2=
M\;;A0C7*PK.?%/(1 E'N0X4++SX_)XN,IK+1KH(ME^*,?+HI(\,/48Z67Y"N
MJ1UUU'%;K@6BG/UR>::=/C>_\%,IX.Q6(BI9A&)O12J\'0*X 9>GM7XN;\X#
M-C_B(WR.$(!TJJ1H#6;S_\94;JPNFY!(FNVL8C0T+@XGSB*M>@ID"_(&7(D<
M@P6YM#$Y8W()Y_5U;,LY.FH[D!$16[4A.F5+,TE",_G.^^C<A)PEVXZ?RORC
M"<Z>3L>MF]>73 @T[)A"('>2(8YQ06J[:X6L$\KU%+(.)4:'H^-,I@LB8JFD
MAM84HCBRGM#?T9Q([Z)::4YOP0#2C@QP?=KX]?S]Y[>OG)8!!I V98#4=M4*
M!JA !EBNS/L,D)+$$IMLB)WL1N;:CF1NN](5$.TS_IN4 3+7-B1S);71MH+,
MG%A-<<YC9"XM(7.M,,MR,Q*1*T8B4AR)R.5S).+<7D>ZYARU01\)47^+4,Y@
M[LC/:4@ZRO&8&-U1BE 2"_'2/F@2R49?@^0FA5&GFJWHI@VUZR6E?.7HZ,04
MO^[,?GT95JXN[W[<N_EIW?MO]_,-- 9+XC$3JSWC3SJSUJ#Z\UX^?_CZV/WP
M.<1!M+;LPC35";R4 OH6WJ8#T?%?+4(B;W@]/&@%20X$?(087N-C;_HU<ZW!
M)8].917Y5%S#F3+P#&JH( ,:X T%>8U(?<9?-[<-?P3VW[Z+"D^61[=L#]ZS
M#IZK;;O(YV1:C#P:6>:83+M77<4[HQ:\_30+VG_0((2X> $.,W M*&EE QQ9
M (UIEPV'Z:/J8E3^=:Z;EJ;*:%*]OP4[:-ZLVV:P$:1^:M%G%/*BJ'J*/[,U
M?S(X"IUHJ+A7UH^WJ_Y.?0=4XW> 7R=[VSN'EH #KM"X^+AH7UG>'6V@NL5J
MG=G7,T>_%^4>N.CGYXZ(%27SG5F_];OU^+U5D1[$=47)R M.$'2$,<0LW",L
MA,7Y(PJ3B3Z[W3S9E/6M>RS7Y18L!5I5RM0*E"-9H;E#+T\;NQ=)/9&S4?9-
M=Z/PRCQF&D/3<H[_A.UB:?EV9V6G8O,JGUAY>V\AY0=9M/LH+H\1,_!NUH3(
M];WBTL8')TP,#\-/G32_/IE>R\^F%>G5$OP*;QOOVG=X"KKDE!LO#0M4 H?G
MNML2@_<ACHDXHE.EYZY#PJI(E[^M3GQ7,36,2L62M+Y:Z3"5]4MYK9F.UZ#L
M<H<NSK_!$DR;>6[UZ!S"?7)@63@'ULNE7J_) 0=&@&*B4*5ENC7CX#9'!PT^
MI-*K=D<V7!C6M4\./$G'@? Z>1M9]\V<&)4I-QB<ZP&G1<2;[(DW SA[%VXW
M8&7E2$J6JE))TN,IBK9=[O34@[S;9L^9("\$\BWH&E1+[/ :WVFD;<B[C</<
MU'ZO'G^+N%,;V6"0BO!0=[^)[OE/5=GRQG[;6]KKD+=T1S&6IE%>PY=93EK?
M:W<=.U!BI7*6+N(4#-:<WHWN3O3[:VZ#"_G@E_"&;$:K*H3?9I0[G?G;(8>=
M'N*B3<%)W,/S3^?QXLOPJY#VPGW+2W9#EJ%A1]386HKZS?W=L5M-X\6Q@:30
M (H)>(Y^N'\TU)3X^TUG "SDF >Z#A3'E77TV A".:7,^2F-G'U=TP0UM[T(
M8EH$'Z<$'9"G+B-H:'E8"++*OLW4'_KO$U/+U5V^V[9CQXJ&622RD)Y9N>_/
MLWC?[\JI1F5T9[4G-X-7-7]* 4U^%:G87&PM$XI#_9"*PZXL.1K]>BH_*5W^
M0LVP=D&5]V@81Q6V(JSO[W9P,W])I"-H37("%];-_L&[Z82'B3^L+N)CQD.,
M?TK$E]??/QM?)D]]>4L5@WJC(!HJ2.)N8Z>%AHTGIG#\YZO]4\BP9UE45):P
ML6/?FOKEU>3KK9)>_]B"<P^BGZ1A9BJM$T1J Z@6 @D'Y..#NC^6\.OUV>S[
M\,>@>W'#IU5.WE+.IE1>TC F#?NMLO?16GOPE*1-SL!M8M_^N/PGX:2DC,@M
M55%F7TWEV^_[[^.'[DJ/7H85B'GNE6A8<[S$\BG"#1E7$Y+X1=R+AC#C>\;-
MW>7%N7.VDHNB][N<Q_L]QFM4.L<)--NO'^ 63V*SE(KHD@M\UG_^\?#P((&K
MTY7L=)/-NS;&)%0"4P);*V_>7W"#&S7L+IB;<HBD6HXB$3LCB=CQNF': Y%R
MA^(B&;M(QBZ2L;.0GIA@#)$I<?03%%]/U.?OX+K>:TFY2<;VFB2GS%B4BF1L
M*H;4OCCP6_G[]U_/O<GWQTK.DK$WY$,:7BM^O8J=G63LRI8VUKXX[6(X?K*G
M=X_N>*71=LAD[,U8JD8E,2#%L(H_+QF;.\Q-G2+#\7%\JW&:U%2O0:83N'Q6
MWBSEL4;%8R6Q/+=^+ND;)6=)6;J(4S"8]'W\\E*^,<Y^/^<@[VI+-J/B\RJS
MG+#^0MY_3E5*847WHDW!2:=ZQ1R>?&_=W=:RE"ZU)<O0L",D%NJ!13+V>[FF
M=\TGG#V>\66G<G+K#O)TE]-,,*R]NV3LE+DA;WO?[\JI8'A1EL6[T>^OM?PI
M!33YM4XG&;M<61]1W;_BD+)N8#^*PZXL.1#%RD/M7M2GW0QK%U1YC\HT=0JV
M49&,O7UEP[YTD259@:#[\#*0A]HW?=MN*]G(I8H=JQ1I@O4B&3N'BLH2-AZV
M;V^X[I<+;B*]@V3L+9B92A2K0BWG-4O)V"D;9^Q'BUG"KT\_W9O[=OGEM?J2
MIV3L+1B32H\A?B^YK!E.QMXELX-.-L?RW,CMJ\K(B9JU'IZJ=:-]->XI]%*V
MUVQG[YK''-MS92I9W!562*&+ITNN2:]R9)GW]I.U,#.G^D"]-H%U"_::_IV.
M2=]4R8CQ+97X&L<*B4,V:?'M@G:199;=+<UA5GX0K=;#[R>3%VFEDN]95*Y1
M'F(,1R72QK/UZI:ZZ\:"<K-Q]M7.3./J5Z=?KW^:[5IN&ISG>LS _0"4"$61
MG(8Z'9HK$Y77:&R69L)#:C/Q:5_1"Z;A]>Y?P>N/WFL:Y"T/-NBY^I76 QW5
M>4J>ERZ\C%Y_G?W\\34LPWQ, >R';4?"1$[7D0V4CZIKH?E8L6,HQ2<#[+)Y
MJ+H<UQ>.A3>O"P]6+(9P'0!X,CF^M,'D>&\^[QP[HEF*AHT_= UOIN+"T+SH
MI1?51&Y[<2::*YZJS!^5JS-P_>.R)K7MT(7?2(!EW66U&H+$8>1B,!8^J2@*
MVK44KJVZM.%,^)/ML!H30.+%5.C_$DZ:MG0 K"X*J"A>.2KALUHM*7J&$3L_
MHIV,?)S(P2 :U1L"BP])'QA0L.GX&5D=0D%H.]8<BO!L&-.U( "RJVKH-#1-
M>(H,F_P+*US87 A&/Z)$B5LHTLG,V6.FK<'#+%L(ELB(&'P^2_[Y7#R8U6T/
M9G4;%JH&![/J3=.NGC\_7U\]B]\J;\U"U>!@5A,9B(8!(R9V1%QQ,,^WPRHW
MCU6SHCV+ZH_&8/1\ *QRJ[!*0TNO)[8*3SB5[TDYH#S"B>,6%#5_JI"Y:NC2
MN>NX%H@RQAGAI96SG6H)LYUHO*8SZ]O@Y7OM[O:)>\F-383,"@!7'1+_3[]O
M@3[\9[(01J/'@*P,D+A'DKH'T<78KJ( @,?28BT86N_H^YC&I>'/>Z:NFQ/[
M8T[/0GQ"%M>9/5W.OI1?3,=Z3C\@BUD2A&8(I\W%]1B/U_Z(N5G2]M7:E,H\
MGY;,TMXZ\A>M2/49IU*7(IJK IS*C/]Z]_UK9=MX>33H$[RDG#8'?U&PD1G:
M$)]HYAVZ^1!:0D?>4#Z_NFS<S*1!HS-[E;]>VMHO4S5#H;>'FM9:^;_)%$L:
M*4:AP.L_2];D1,I546G1G[JW!<=1*;I+E;2]38T4#0:]@2^[GP!]#*ZQE;^$
M-\5*JSHS'MOC)V$+WDR1M!5A0HE*FN(><O92H"\];_$T3%F!E<K;M.5=RU I
ML]$2,().V/W$7,)',['W((KGC_ W>Y%Q2UBJEB.6\A"X 2?1L&D%B%"*>9TA
M)Z6LL5B&".3H6,)+P]/R#[[RS;I_KNY=)M7SQD (;QNP$)4P&UNK[UI&D<A"
MY0[P\Z4VPT2C!^FWCHV^:^?M&S >W(K=-Q))RS)]!L ",@+YX-EQM'/*[B^N
MVAMR\3SM-F!E*GUGV9JT_E[=+:<LY.^430MQ"L!]P,-.A(<ELWJNW][IELKO
M4Q0N,BY_7$W=,=1[=E.^Q3]C5-.%B$AE7VRXREMVR^-X&A;%EMWR, KHIB\(
MG=E9_\QH?BN/S-]R;EQU29[8^#9I>V919DO,,^N.1KH&+,A;J+"G99E]2QXN
M<;;.A4S7_+(SJWZMJM^L!Z6BY\=_^F\7U0J#DG0<R[JH\1R\I;^+ [L\&&BR
M\.&SOW_&0P#C82"@:/=S3OVBN4X@N >*8?91DGMI(-OP+" 9HMD#H,)[8XJC
MFPY>TC$9VR.AC5WAR 4^<BT%_@R7BO=-4R7%X#:PQIJ"WCH9:,J ,9#PU/4I
M8T$A#)@N<"8 &(Q0QD^+94:5I_8Q<VF@-4OD:7AZ78LLW'5MS0 V7"X$8"C#
MU0!.9V%T#?Y_57.F>#FX:;D/4"P5WI?] ?S_FH7V B]6!!$.L:ICQ('A#N%+
M-&-L(IB/&:C2,4US"!$\+<G88<]HCAUY-UK"'.$+!R+%6P.'C;V%T7KH+) E
M&=6%_\E.!":90'6$H)HR/>] C"QSK,%;D#%));TU!*HF6U.VA +8/KY')L$*
M!@TY:B. F8S9=60-X]%'CQKBYY@Y)W2S@Y7FD#JRX#>(X"83LL6Q%[P.X"VM
M@Q?'VR'IS2'Z*?I3A^24+?B-Z3I>Z"18 LD 3+B ]1#NY#Y4(!%>0Z017D*_
M]FE5PBMWX3*RIC+=:1S2M9AE3/1M=*_H#,![HZ>A1^9>A@(X8W@.U6/F%OW*
MB;")]PL[]@/(F_@7[.: P2]06,EF0M+[I]'$?_I4.V;:;M>&I(;?Z9!5HIN!
M/XF!A,XM.:?P'_XQ]9?<"$ ;H.I5$* ]A*=% "T1L:&:\/@[$ _P-ST+LP1B
M8*2::5@F8$JKX3[]A5B$<-O!@3F/H\-MP/O9M!9?SORE'8/CB( I103,WQ T
M*%)<>1&)<7[TY(1'7LP4:!-=M&APK-#9UX&*4OO@,R1I%\,,#5\+22,#'3;3
M1V$)/=5W92@#'0 (!.GQ_9[BY[D!OF&7%D.Y6/I#.=4GV3Y(I$$N)3$S"Y!"
M@C7LM3J=)QH7\'2D.V3NV+?_G[TO;4Y;:1;^SJ_0S;WGJ:0*^T'LG)SW5.$U
M3FSC&#MV\L4EQ "RA42T&,.O?[MG1BL2"!";0]5][G$ C7JZ>WJ;7KRW'MN&
M 6=LYJ01>"N<L@O-!-L6#V6HCT^D2>K4LRF#KF(\VL_CNY*;NL+?"RI%:BFJ
M@BIUEA<V8PN)9J=.@3-DL*<RV%G,EJM1D00WKT5&;[6-AUV>1$@VP\45N^Y'
MOFA)*J4_F%4$?PO6#' C;4@KR3+R@HG"FEX\T\PT609?I.VEI$TPR4D@IYDM
M<<-6J&OM.GO^T@-J'0PS+.:?'\NO7U3?P(4Y-CDS!2KY-E-FJC0"K<!4N5QL
MLI3P'ZD_^$PM11 )CACA1NLD]?TW/0WLO+1>2GOKW#)(;U"' :DUDVW+/!KY
MOPFUZ?1_Y7:@.^O\:#Q;G5]G7O'L220V9K%)##Z690FW/^<D]"%N22.6.47^
M["V!3<0YP@F Y(WF%O_[S_\<' AG"E';?X/AVR6?80FTQ65\-/]9^"&I-OR9
M%PX.>.2TK;PF#=6SO;K?ERDD<Z4G)9L1$;7A^!PD2Q]$!21G!*$#(RG\6'/P
M]5FX&PW@_74#CJ[\F79J9SB]UA%[8M[_U'^=Q_ K+PKJA$#_^2^@.0+A!I%>
M#EH$SB>L/:#TXDB&73D8=KG2QVL>_PX"B_M!0E@9.#X&V24NWTB(M18.L9Z0
MEG6BF+*JF[81E\<:4($Q3SR-]9M;I:=\>2Q(9.="JM7(D&JY\./\Z-2 LU[&
M>28MZWV&3]/FLN)D()_GI38ZB,6I*=,G$2G348\]C7\;^I?SY^:/_*_6SO ;
MID#S0,=__A=XK/+9!".E96'.L@R?&PH6OC@ISXY+\UYRF(M/X_OZ55V\T$]O
MQ$*2).9+'1RZ.V+T!?_Q>]>)R8O,D5JV]U5TYO"Q+W/XR!B:)[G:9>6XN%!#
M'2=3:$7,ZRZ?IF9P8E$A<2_LTAY8RG( _KDSOE-CJ.J3KX?-\;#X=MU[Z%V2
M/X:A@EG^.\U4I669:F:>SZ6B@>(_-DA;L?R):2<7Q_5QOC1X&G=.7A\?CYKW
M;])*RP'*X7( YH+=DE==?<6 (PTQHM*6*;!;7R'@QVSRQ)QB*LU1:[.3QC8S
MYVG-*([LY5(LII&G7)V=I;Q<+44QD&V*P;M+(ID$+;3H@_K=:%>,7.>UH596
MDWS' '=R752$9B/IR$X69P G<QRQ<BIYZK7B[&Y_*^W5OCJT11^;-(+ 2^-L
MID)CL7)P:-"?P1U.7![XS\S7IMVS2C^N2O?%E2==L\U0^-P[MC;UMS:8TA^'
MKCF.4QJII,5L.<%0N$T=)[]5A\V)#I2W@Y[2;A/X#7!@7GEK&:HHEG(?_CUP
MK;6EN;KN*8 FT13=:&(6!FDS?0?HQ]N@431?GQT/'DH_^A?]6F>5NH#!)7#
M! :9X("V.2DW!5_)&;N43^6.M!9S2;H=K)T>#B.51BF=06C%%' X4W.<D XQ
M<*^Z:7E7SOY6G'W3.V$5Y;%R:=_]L(>+G+#Y-4=,L<XE,<V_!0=TH(M)4S]9
M=@[\>H=+>&;T%XTBUQR'.Y4$B&REDEK+Y\WW(M\\J:)E2!KV.I"JEG;;^$B)
M4@A=XGG9*,>8+@RKUVFF7*"$RA,KC<%=]WNW^K6JUU:GN*>U^ XD MK8LP"C
MZ09+^H(=8+H[30[?87:=Q:WQ5)M#P%33X-I\*5NH1;7?V^79'5M#N&AQDTII
M7$4$CR8U@9,D6.2%=*<YO^-^Z;(R>-7:IV>K">=. L],%"?-=H 5MD Z,%)4
M /0 \\'9Y:PW<]'QCEW!D\Y<Y$5]Y*7<XW(:_37*6=""N^5#S(N\R+-83L,%
M*^97WE#"O\EK79,G3MWWMU?KOBQI#Y<KZELSS44('+/PSK>O)WTZJ\[-G![=
MYCC<:5PE8(@@GV "\_L?H+&=E(^63*ET*@$K 5ZPE1,!ZD]C^['_^^MYX:2M
MR3N3^K7VE&S^(79WP\5SAR5%2W-#%UJF2086RVCP6BH[=7PT\8"6$UJZ( D:
MK#L]* N/8U&#@HR&+ATM8)0$JA]4'<M4P0PSW%OW#G\L@V:U3)M9TA=U;"QT
ME/5^7[&PDF'R"<%[@I6YTNI>7H'J@ ]K?50^85MK V^DX-\6K9-VEO5<3UG"
MA# LU46 )\I'Q)B<!F?;5]*;TK?[1\YZQWPYIJ/+6IGW.JX%:DJ":X3*2>+C
MHTY-B6E8!P>WZ#&S1^F_KQ0-(7&J1,ZNGROZ>:YRATW^>)4(;L#+=' QF@6V
MI+N(0,L\5^6S<!(C!7,U?UW)S-W#9I\">PT)T,37B657@)8G!&A\KV8!CIO*
MZ]DGN*6^.]S"('&X13SK5WYW!M?JA?H.N<6_UQ"W)';*IW!+:4JQ&N>6+(@C
MD$< H2T3/^(P<HFEV=)@8.AOM+DRR+]\":QU4S'!JP4!;+(^_; "+#&MHWTP
M4'$E6;2X^@36/"&F;"BT$8/#8F[S]329;:S>:^71T=="X4UR&>GTS2):VZEC
M!_9A<"49Z4+I[31FGXOR03I7)I+:$^'JP[^$P<Y*ZH/P9[!1!=*.-K=F':U!
M*+AI@OE<(3=A"O'"-,%E=R<8BF] +>NJN18V&*9U[<2T!(DU@W"4;P.</ U-
M--XB!GGI%L'YV&R<W7ZB+0(RFBYT5%TWLL) M4U0KN8 M"%-4)]6)1G$S 6'
M %<_[718D_H;8F!JHM2E3>?:@U6(K1AX0@62? D7'RXZ$-ZFWC$<QGS)GW?K
M8N7E(>=5W)[0W'UW:0_;!J*2.+O%$41\N_.%"F?@+AT)YQ1;)L1$Z%PDO4>]
MN#YS!>!!WB<!;^"EH# /\_$S(_Y"88:%$9K?1G,K*#2L\R9\]!,=#")\!$9]
M573;!%FX"E8M;C6K=KX==4E.E<Y_JEO-JL7ULFI2SW@FJTXQ[OX2= !*H$*4
MM3?R4.N@/$-1[K1U\LPB-D,')7';N3973.RA AJ?ZOELU,2UZC+L/%#:R-(V
M[BQR:/.2VMPX>99>[6'!JK>VFA-#@YGG-0Z2N@PS.*M\6(N*MCF<Q:9=^*L(
MJ-\=Z**%3&0;K&4.\UC1/D3KKT,(;;$R=:01[R=DLI*["\Y]]'I\RDBLU-BE
M/CZ]&%\47RZ_B5X;%,P<<38PLP%*//S3!FI%M">8DP/2:81?B1^\A7V95$(M
M/40$#UT,@=/1>5* ULJ8M4EQA8>;:^-(#]H)Q"!.[S'V<PD> *>"(I,WC2)N
M'PAZ_^7T6UEK8Z15AZ]VND4"UI%:7@L0.H&-]WU!NH-FX80%Z@$DP *V8O:H
MM&7.0KUY+!0KN8-2[A"G,NL&JAV<H4:[GQD8IL/ VT%$X"WHS2O8&0Z9$%8E
MLM[5D L9ISD.240$CDV,<[J2>0^BEX+]_P "8-P!SHZCE^19:N.!\(KC[<-,
M'3<,?&VK5C 0Z5]=4'73%.B8H0!2Z,HM^M^IXO%< KUU"6L0LZ&=!M9@$F<=
M0G)4^F6+S4ZQF/,\Y,NI^YHE-6=N:Z6RLYK*S,)LH10[#1+;2'&9AQPS06)_
M:M0#>.:DT>G@QAFOA37).FALEH</Y:N\69.\ 8$4L@.]TW$*Q TZO 5W9&M\
MB!9ISZ+U[/VMEMBIY-UF"Y&74TQ1.H;U,!9?&1^^8D5*N,'<G%(Q&SWIL.;E
MSN,M'[P286<&UM0N4DLRU%GEQ'ZU7I0?56]HJ0\ MN6I:==A<!,U>9J3.=*X
MNRS%<P;R07C/V$Q2EQ6D-&O]BIU-G#&BC.:.VCH4CB6SY[4+=:VE0-B-\87;
MJ9;SGB>8':L*#3&#='AG3S8VU>/!#(+^2CG)Z<@INY-19?]D5-.9C,IJ4!'"
M#C;2/10:[-53-=HEZ4KJ&1B4ZY!JE\]6MR:^/30?U<7,>Q?:U<JH="8D3#/F
MD2NH?T9M><=GRT:J)@?!)]1,)VW<[0WG0?S;D=WKLT"^_.S\;+WFY0>QY_/J
M&73L5 3/R#0;A,J69%M;+=%3R:[,5G/Q1.=VLA]/V(.[:Z#QYF(,SX+GH*'=
MRV4#QCOSN<\W$ZC-TF_$SUY?7\\RF&"H?$1A":^]I&+=RSFAXS16J)+NU(>O
MOZS;2[7<]G%1M#*>'0&:L9,5:*M:&G9KK1H?2PST/D6YKML6%>V@HT!K*1T%
M=!;SYSAOQ*&/,A5O-,0#BBAX_'SC5SZ"IWP.A1-OJG;LK/N,UZ[7<;O:!BC%
MMC[4I@^W7_R2.V5N)(_7NOG5S#>QG=467V OR;.)S>\IU]7EV;D-5#8IU(B.
MMI ].TF)L)+]0NK6M:5<!>>QP(H4W&G^BSRL2.KS-V^2N M'4J\Z#/A*U5<M
ML>D\-6ME%F'?4T/4M/O>U=S1XJQ,U>U>YUQ(7&BRWB?N8$RKKK7]!6A3^^*5
M?#77RRW\-&X.+%T^/N])I+HSZ9/.5C,*W:OPD7>R_L1"@TR_Q=6:_AGM]0I/
MX^IK^R[_<%JI_/)J:*:TUW.0*C &<@: F]$H_6/;[P4P^%E(.B<\J@]7^@GO
MT:W63IE2+ ;4XUC^\87T"WKU^B;8,C/!M/+$%7H1^=_KVW:>):05W=0TNNT?
MCT>WO4)5[WS)O\]M'SU%&$-C]5SKWU?+=GOT3K==8C06@]2^[^:_/ORJ616M
ML+EM^PJS$O;P3$%JS,!=>5YTT,&B 8=O/A#6"6LSY)K.">E&Z+7( ? 0LV0Q
MD@.KU^5TZP[[5N]U9S@FGS8664_9K>.65>RS](?L<T_/%9S\M-H4N%[:(J[O
MWRNNL9_]PS46_.^!21.8R.8"_LBLPY@\;/ TEFXM\3:GOHJ7*39ZY8YY(=R(
M-W0X^*$(;S&%UL!3>PZ+^>C^P#,:3X50%Q<:+@9"PZ%PXV(7EB9 "9]-MHTM
M)N@*,Q5/$WW"=ACW)1?WI0C<YW.Y-'$O9G.5V5T6_AC<1X;= ]A?[.(U!ONE
M;*VT9,OL]X3]DGLA%<WYBS6^B<%]/BOFE^P(/ZWE7<F?/./K]-?HN 5#3A^<
ML]?&^+BCY3J^P32K->MFM\9<D2T0PR0\$2<:30LH*,!'JD*R%'4Y.<N>^;0K
MN)RE<!;+C(P[=I79K5UV&)>S%<ABC3OC3*?<(FV\=@:;LQ3"8LF2<<IXF5,>
MJ0.._#K 4%XEK :,&,F+-1".,KBW7H[?1/V\]=)*SX])V!3- ])1")+JKY;$
M"I9WURB3<^4,\BRDA-)(ZRSO&YW..7(@+TX9.?"GX&JZ"%Z0V:=K-C%5URA?
M2;LS]4[2,3'/YU/E^4AU=N*ILX397Q'.SO&HTQO>F.:IO:$) ?G#DC^IRPG>
MS170CL,L7WM>5J*/"6W=;JED\6:0\:LDD GS$W01C2BFZI85LJ7\[ $8D31:
M2$S\\=2=X2B*J3J*6%6[I^YZS^X,!9^JZUK.EHI1]4I[^J[N]$YSIL54G>E\
MMER=?PK,+.K.UZVW^C2N=QY_W8MG]\U?WJC?;<^M7D.]0![[J@;C\UYF/V\G
MJ!"ST?%WA)Y:(W#DNYN==ZFG\?B>--K#VM59K[ S9/+VEIEO; /OI>0DA FL
M?@U+LN$+5AE@OI>Z@/+3V'Q]*'^U\E_4NC<3;$I=@(=61!(RC8!<(YS0-OWK
MJP+8&91'B8N-E3!4%ZQ@6-[9B\YF7"K [65[%WRI[8^2(?\RQR6EW_L0M53:
M62]Q4VR\@^(O]KMQNA==:-?PKKLA45_)%4U.]@_%O+P[@1T,G\;ENC9Z[G:D
M:J.TRD'FU? @\VD)@-LW4GL9M"<>G)'/KV\JSG)3N(\79<F?1#+NAGHD)Q8?
M?]5^?+FT7U^?5W/QX6.YRHHOP%)D)XZR.;@HC2Y'M=)LUVP!QBDLQ3A8$A+)
M.H/3DGVE7]9.B;KRH**/BZH[QD6(OSGX*(V&2-7BL@.L(_GH=!D^.M-M(Y*-
MO@P>CTX:/]]Z7\G*)5!MMW@'<38'ZZ31Q*A2GGT!M #KE)9B'>4U6@*-?I7/
M?I1R%Q>_>FN20#%7^*QO_^Y>=Z7,MD"O.=@VE4:Z8BU;+*QOR&4</P=&Z;I\
M>MH%+"FWWY3O[56*N-A;-SI--XR*!"4[J01O4QR\-M?"<_-V<I8MI.$RY//5
MK%B>G?P4$ZU=\<RUDZ?Q^+30_"G?UE\?RSL3'MSY'L_A21?8>-04>M(K<8;(
M8(P.1U^[$].F]WM+.MYGHIE Y^6K-LR?7!:_%7Q-A^%-SC ;;->OZ'AS[QM^
MLV#,/'"Z"@L.WC'I1!!5&!+R0N?JE-B(G=B).@W;F&SCBO$V(D@".UO8BXW/
M&0E,+<A$3,0)SUM_X"O4V0+^*061DQ@XXF^U(])YE'(-M1R8H)"= 5*2F0E3
M0)I#_*4T5J-T*,8V</XK*E[_GGI1[0SP_[3^Y3T6,Y<X&!&.4^L]1>UW!O@Z
MO?(*76#Y&S#VI#:S>@[TSH%MXLV622Q3^,A[1=XV[OE'O WDI\CV]_Z)A)SR
ME/"WN'2C<V^2.BX2U2ETW!/5FXO>N'@E>WUB;R=!FB6JIKQV#C&5AC]<R-9R
M\3WRV/P>KYGSC:&#4L1^D3>JI+$+R=/?MC) O97-X#]5.ES4&;#!+]RF-0&>
M@HL+_GKGM?2E=:WMOA+^IL]=>J^+)-NU^O7WUR.U?G?ED8V_EP-,^0I!=8GH
M;7[@[GK@[IJXNQ8B=STU+SSE+<_!,FGXHL RQ:@D#-X'6J-=,H_=UM['_M;>
M1Y)*D=[L$0*H WRSJ2]1_3*C&*39TPW+<T8C2/WMKC2LM\<_<R_1E,X*)J[A
MW:HGIE3@W<EQ7DREJ6XAO@<\SL1TNROS@QK:(^51GC.0&>"< -AF='[!!"7*
MT90(1@4B"/%U)#UVOGZY:A34.$H$7Y^8$(LYM<4T;C *V5QN,@HC<%(H_C[&
M:. %-TC'6IE\]W0D#"A:A8Z+P;D,:-$;!.Q[0AO@^Z>G 3F'AJ[WS2RHR(X"
M&,0;=T()IFAM((^!135#R2 ]'208SFHPP9Q65=II&?2G3>>$N%+K4#@&Z2+1
M"4PHN:2N07C+?2[V!)UZ'=3/(-[$3_KS#&[ILP! H4<2ZI*L8[=%W:(M_14^
MQM/TEL/AT[H&+OI(D#D(P(CDC1BR8I*]!;Q9O]R;+60*?*"(Y @+S[SB?!=,
M=4?)/ZG\E:GJH!F8], R$0\SOO[<%FW8AJ^+[=0=82BZ;<9=D"<VLZA56/>M
M$Y!YH<:4WY3Q:4YY_')WXLU]BX9F"5O1#\PBB?/%-"[C"KFHQ  ^I2A2HY26
M1'4HD-,XO6VH9NGJU2*;1?7TL$\Q#7.]%%FXYXZ$,@=L-J0Z^HRHSTR>T0C.
MS\>0(]P,9PJW:[47_4OM[<&PO<$'X5*8>9"_?#.9?#$-4S<RE7P::]<6P&6(
MG<5ZL3'\7K"J57&=N)S.O*54DHAB1X$&>7=O!&P >!P$E:&S"^BP13JDT/1\
M8#ZQJ0\<91O$&1HPJ>]Q#N+4:71^UG3O59TAI]/.!3GZ^ONM2"IOI]Z\+S:]
M:EF@YSE-$R O>)[2<$8J$2/C'%?$&1DWRVRB5KI)G8,HW7 2[?Q-8.'8=7O
M!1L0'%F.4S_,WAGFG4\CZ[W][5B[EB\K9^(<9)W)AT$_3'= \DT32^QNSKG9
M!1DB#5,L7L!F9N-C+N]_*D[<@J%$#'#1^)FS3JS[[Q>=U3& ;WI0R@PPN=D%
M&2 -\[!<B#4/$R#D4+C6M0/Z;[R3=]U_G^.GX$!6N2=I73;NG84# @H 1X)-
M8R,<8@6OJ#MON--#IK9YH9WR=YSI1J+X[L/);[GZ<%3Z^N@)D<7VDCB&N^0V
MDL>M2NG$;'.5^#%N;<_A9G?>[\D"2[O(K2R&K^\#L4EGLKASBS^UOBW.79BQ
MRM.X(E65U[LOWY7!SJ2NG-FP%9+I*QH=-,9.FSM4U+%7:$)#V%3! *$D]^B7
M[[2D[?1I_.WT^/NWZURIV.C-*FE#C#!\"E<<GY1O!$=#_1&3;2H;*PM+O<_Q
MQ.03JM:^?_]5.3G]>:2\K*<H+"X2Y(HCA[U.;!)?!S9^..J]G.D#J];-K[7Z
MB^UR)VJ_YL5N<G.AG,XX\J7[]\YDMLH<S#91X37N&:>#PN6O6O<UQ<;<D<RT
MV:JNA)B9@S_2<#2!/R)'9J9:@I-HZ\'JK7'9ZA^]5:\K]1^+E/LMH@0V7K&5
M&$US\$@:OFA-7*2)Z%R%RTFV'JS+&A?.U=J7QV>I]6V1HKYYY,9F:[&2HF8.
MIDC##ZWF9C>>7*Q<)3)')6+C]8Y%C C&>/XJ/3_F\O=OQ[4-M9!S*ZUH) [;
M?! )@7UWA5>3"3VSZ)2<2RMI7%05B[-KW=.JM)H9 O#AQ%=]-2XVCU3UN-^0
M2HOP:V)!1DNK #W@6,D8A<4&AI+9H_'"K19P<[!,&A9S,5M8C6@[FL4?]S[:
MG+[)Q#3K-%[NDVWY']KWF^'K6!Y(:[**+@&,OX4+S#L#CG&NH+>/8>*0-P?W
MI))#4UY)8X3J+-[Q"Q2Y)3X6U3N[_GN1>1$+MPCG-9@W+(-5>)54FTS>Z(QV
MNP_? IPY!P>F5 <0F=2]8&>]Q0LSSY[&N9-:IW9?*]AWZLY$MW<Z]R.V\L8I
MR#MP"O(,TI<4#2^+V/FDN<T8N^_X,[M9&DCX#E",D4:AFKU;YQ7T2\SS%E&5
MM:V?_AL_\50Z?WSX]?-[3W9O_!Z20#NUA#-\S'S'"KMD_]VV#;R#")V_B:Z'
M\^T.C(=#,::&D]^'<(=@DAZ.]J(%DHCU3!CK<3H@!-<)7P@K)6^(@07WTVHX
MW][NC:^Y^H]!KAJ/_@!P\PC!V; EEX[5I [!C&+.XF%L!<9?[^FZ=&> G[CE
M)6\T/>3??_[GX$ X4XC:_ENX ?;Y#$O\M@DP%SQ:^"S\0!,#=)=P<,"-A+;R
MFM3)97MUOR]32.:Z 9M]KR7F\&9C<L/QXUDM?1"EA6=TT_"][D, :PZ^/@MW
MHP&\OVZ 42)_%J[AQ#*<7NN(/;'@?^J_SF/XE:?Z';W_SW\!S1$(-XCT<M B
M<$9A[0&E%T<R[,K!L,N5/E[S^'<06-P/$L+*P/$QR"YQ>=01#:N*M#,<JA$-
M"IS9'EZ; K.NM;^0-O9IJ&/B+DUK05&MZIB9%9/RD,L%F@@LONS3^%D_:BBE
MZZO"2W%GS,1_6O]>ZQ;)U Y#YE$U#R[8A5:5]->;JT&E'1B;Y Y4$7QXHD;!
MF:083* )5UY&G'O]OZ]DWQ25/>IE(JFW9M)$N>Q#YK+O,,W6LBM6C99!\_NW
M+1F@.2,RJ?/8O$2@>I7FIUJZX'1K"?0P$<RA-* B&FU(FI'8 V%'J'4?_&5'
MM67+EIRJ2:P0;6?@][IMP/\LTX+SCZZ-6UDJD$Z'E5 (6%V'011<U7D9U@F?
M$)GT6["#@LC 1B%":T4EK,"P52O<<<%T4K3HFB;-P\IP/&#V>!^^HVFD'!NX
M:N%0\)7P!9$6AJ 8CSBT"(#:O&Y9'F%.ST&;J+!!8\3K23,QJ P@CY<!N,F>
M%+TM8@T)T?AV5;W?4H!A;HBIN][6_6$3=H+6F<%[Z;@OPR2T-L$I!90L6&3K
MI-$R*$S!5- 4@G5&]-<]<&G4D8]&M/"U8Q*+Y6%3T%Q8_6G9EF4H+9O9F+!)
M1 M\C7'5RXNCQBT%U]U!ANZ@332]KU#8Z+PAIBQX\9"YN6J;O1A:>%</),/*
M6JD 8)SNXT?L\ 2F  N?TFI_I_Q:]YI &8KY0J,UWH/ ;Y(7914&NDG3F5EY
M&WV4!L>-@P&<8K=M5V;Z@AJOO?16@T_;!,,O+!SCP7HH/+!^&Z89_SKV'I!G
M* $&Q*#^/#;L&?:(4PK@B!L?&KPA6X&!D]$P"BTXG/@<JXN I13#][A_*TY5
M/CVD((-ZCA!U"N[9PPZ.Z(+F/D:P >!/;((J$_GB4@''FX6D-" (TPU9+%JG
MFBO/U%$AJ/_ ":):"S]S:S Q#"4T_7J<]:EC;Q %FK$G#%0;=,  O%MX7,\T
M&V>W0H%]9_J_9*H;U8#J5<(S:\!C6!;(Q&M8UD\!1#DOV@(0> %"J!]#1WDC
MV)>F*W2Q(P-".!$;+$;Z8F?X9+B96R (6,B5\^+3TU0_[A:.;!V@]/W,OR;B
M[XI: D]/IF$='-RB_F,/T']?26^8U\Q_,ZZWGQ_KO6]E"^MZW:9QOL&R;Z0]
M;[NXV U'1A<+Z#C#MOGS3S&[ >"? K"'?.N4>LN)A[78>HZ_T$R85G2_=;1F
M.>P.K7N%R]'77Y+Q75-W@-9^V$.T3GHQ-Y/6U:A4.AY[%FY)5S+:CO[S! (*
MDBAG 84>6*),7.%%C4$&JB0#3D$%HIS*"BAM+'YU@HNRH4/P;PMUH?>*O5+;
M / -+=,D XNY4;DBU5LEX8[(FM[%&C]7:V'C%9-H"I#9).!%P4<&>=755ZHX
M GU!1R@R/BJ?T+HQV%T9D-V=+@6F#@:RX6=,!>'*Z/LI%GH_EXI&C2UG252&
M$Q6 _K@?/M#H'-.?GW$ N,P\<EYYS-_(TEC*6IE*HU(.J\D],1-<@XD4)Q.P
M2;?>9#L/O8Q+FI^-4N>AV9$+-UZWL.!N9C98GF,KD:*F=)"K'<">&-1/,X$.
MB9C$29EE5\*4)[*Y(R=BLOM'8%$5=PWL$574F1))B^F1]+<X^/U;+#5&%X48
MDKH\CW*.0AC!Z&NB>W%!NM<2ISE.H7LI-Y/N61 *(!4 'ELF]-C[4$4#"Z S
MT)<:# P==H^F,0BCEF1B5SH=M(C)7$E8!M:9EA*0O)4SYYCT>2=_-2RU\A<G
M;SI)M24TI_7R5%^T<S1KX)9A;@53XNZ6:*P0J-A!VXJE&W"7"7N^P:EAPQ]B
M6DP?>0,(/>\DK%N&P$S@NP^%%A9PNI:;9-%?\^UG&N"[:+0-IUM3SWRMCVB4
M?**M#6$5#(N!1J,NE.1X6!'=JNNQO'6$W-FD#S:T'Y*A8&@-WR1.YCNLBM>>
M8F +F=%\"1<U+F:H):IW#(=UJ\5:OJ$K]^,OU4!3;9\;R4^E@S%->.5;3]Q=
M.PD*XX;$+G@ 7!,\(29"!R8U;RL?VR3WKRPBEE",^F(';NP*!\"KQ,E(PK #
MC9L/)+3'X*1)F8%!3;183BZEPLE%EY.+Z4I-J?13'-U];S0N2EO(>D67]8K+
MR=[4G+EX:^LO%@SRY":V$&5^V0,FDPAGX'#HPI&DO0C7A_5#C#76VQA3!>0P
MY[C>!11]9K+RZ*KA_C8K'(/<;P7^-2::F?%^<*88()2=+]B3_Y'Z@\_"G6'C
M-TY0#-3"U\.;0^%*-[K J,<]]!>\=0"HKZCYL22]+=0-'.9 C+VON%69G<$P
M>93<BKBW1,HGN97S70<@"RM:1J)B,!1QCVHX%1V29 U5F-]0XGX#RT1,*S U
M)M^:QY5?O9>15H@*.B7KZQZ&>%J:XHS@4DCZ)/;S2E/\O,.9]CZ]CL$^^_E
MV&CJ'784&?U536X#0LG @!+##$_M9-46#>]5/L<PW"DJ-5)?O3T.&GI3'WQ]
MB>BPR*!T.]URQ>W#QBPFF&N_TYI%+<8KA5P:OJ$H)H@)] S=[O:$:_V5!:,0
M8)I,H D$MJ7W%3G#;BI1<E1GB K::)I?T4\PE!@SD&R3?"2=W(^O##7?'^2#
MAH__Z+#F9?/,Z5HGJR0N?9O"*I&= (*<XLNDH'0.)ER8+B>YV2'[:3@; OY"
MHU$"$\]OV\W=H5& <)?MMM*FC=[Y[;WEST#2Z'U^9UYKH6T3'GSP)_;XWAE(
M%()'KZ214&)V#9\DX4 %H*N &YJ=P&603),+Z*&$O=%&=?A++X\'95>/Y9[Z
MKU_WC+@!X(^(+-DFG4.&#!"ZN'>,U@G*.GW$(BP6GEIE]10CS-FE69R=F>!L
M6,;T,<F>1S8TN*!+)T@8@JHC7:)#,'-*(4S7,PB.26$B0:+Q&EWCO4:IH&.V
MG<D<=F:T9#B#3;I6$<P8%#H^@XFS- V9MDB@YZGS4B=PVM>=]J<8F.>Y2V##
M[R@U=YH5@XZVJRRQ5R%5,P+RJ>DP*JZDX0 D=]R&VZR:SS(#D6;W;9KTRV_?
MD0<-TB.:R;)'<58&GW-&I9Z?IS.<IP-S.B)\M_?$*BE7P11RI0_^?B5.Z\5&
M!VLN:,D%_,D$RS&7*U]HYN_4CI_'7J>:15=\&O^^ETN/5^.O[9?=*9!&61V4
MC,L$F'B.=7#@$C]!: U0^<_SX[QQ,RTV?2QCXO0Q-B-I,CJV^[U%=UJ0_@DK
M>6U?:T_CZZ;ZX^SYY.'VU6O.$M/V%56,K^(+_\4/BR,O!"8PPGU:(_^S%K[8
M<(M85ML:[!$;W=1DLG=)9(<G2M%YQI+/NUYT#Q/8&%+M_WTHANN(8RN5&1IQ
MR42XG"P03C41VXNDLWBHRX7IX2B(%Z1$!%86(:J#CA!9%Z1)@A>M N\97_/Y
M /)]G8/F/"!+[I;7J*^FZM*,+OT(E%UN_'BNE14 /0%+)UU4I'P UX[F4(,!
MUGL@-]'O(;<"BF0B*<(J_9>GRX:/-TT*0S>U4/O<M%N 5G#.JF+I()_[>W7"
M?UEVX&.*';C17>!__],R_@MOO=1E&FM9B1#)I\W=GLVX*R=]3\ZUD7-Q ;%-
M!O(2(,68=ZMA@:T <)U'>"LVO/T427H*TVK0ZG/(?.:QJY*CD)?FO)/X)JZ+
M##-)QLZ1'+&]FUJ&(V*ZL3J,R="#1J@;*"E$#U.)*'H^=BX/EANR4HU\7X-=
M==!H%L\77/(],X:YN!E&U5K"QE31(^B2)A4YP?]P=HZ+5:<^P+TE<$:D-SK<
MC*'VBV.Q!%>EZ&.Q0(O&6=Q4I?O^3?G[H"Z*SVZJ$FOMW9[(<0QC,(S"1#UM
MIV-P:EXDS\^>A2'^LY@MA^YRTFB16XFLPEUP)$Y2#9S&H:K+LF%C,P!_!&A]
M Y+B^">4X7>:^/S-F :YV:/HOIQCW0>L<QC5VTO%M.2'WW>E^,,8G$/ICSE@
M)]H#Y>V@I[3;!/ )Z,LK;RU#!3ZO??CW(!SG7WYHTPHLDD@;*4H_30(Y_8(0
MOAU*1GN"P^>=FC'K]YL<R.$IK?I:E5;H<OI:UTXXVL\XUE>CO7Z<_[HK=6^O
M;\_5Q-HKM6DEZ6FTQ.B;1[6):0P\R1>BFALO/?!D"3=S9\_F$NP74HA'FU*(
M*SKF"33C=Z5>Z>5;U1*14]:,8F&F9EQNHD_:/MH4Q9B/48P3F I<?*6N#A.!
M$.W"K?Y41GEXRRG+,2EI9D,NU;I8"KI[6BBD-E(: RG6=EQQ).+B*9[3.EDY
M/=U224NWC,^5Z[.SSL^'QO5+VB*[LDJ1[4ZCF3Z.IO0T[IWGO_PJZB_-7FMG
MLBW?9P]4S"$EO*S.EQ_-TSK9')KY4OVCTNMI:C9-W9?>LK2 >:(:T=^1H>Y!
MP@QV?Y[V!4W3OM1-\YJ <70GO2UCH,VL2"P^7/:/VU\NY)NB>QCKB3+)?7N>
MI8+FW'!:-= %,8T!I-&>#JM6#*8#TVS@#,650MM[= 3)+]-8X4GB$O:-^^3C
M7J?=.+-_7!@E<77,L3XO.<@<^=6YP;S3T36VU>X0@Y4?4K0 /JA\@.5D1Q:Q
MLC66B$XK>$V4533^&I%N3JM#L+[,!"SRUL&4!(!_5NAF$)G [MOOJ51C9X!?
M;,90<3]C*,490\7]C*%W4$V5GVA=YY4_1>J,<U"O:$9<:+[@DCM*Y<9K A]7
M:>5O.)KZNY[&QV?2_8D\>NGD>ROU"M9F6+.B)]KQEXJ: 9O(RE02JU[\R&H7
M/V&=K<\2BLRTSCIC-+ 3/J_18M% DW:GFE6LE?%6-1VBP*).?;?5,PA6P-)V
MZI/S6,KL]5C:O<XJKO<ZWX)^J "6<?'<84G1MK.\BJ&&(VAE15M'3^/VN#-X
MN.O4:J26I&CKG!V?2^_XS)SN%1B;DZ"0Z[V46*TTZT\LIYV+ZZ\X 9%VC"-!
MSG *$)]A)]SBY":4>CUED"1XN()\W1B,SHN\\H?8)Z-QPSH8"9S_L?:=GH!/
M\P$R/\3S0>E<4DW"";3S51?3MN8^?WEKT#D)YIP(WAV.N@VT2W#[84PF[F^6
MI1K'%PYML%'1^CEE42Y-MQA@I:)\E9(\W13[[:F#8<'9W2!'Z P)J<'^)_/X
M'?6:^!"J4V99KIC55YC(\VX1NC&%G)]7TS@^]ZKU[P8@3% MLOV;V'8(=T<6
MIU[%R2J^M\706.D^2W^6EMFSRH9991>ERG:4H?[)V]M2&;(#F-O][:VVV&GN
M&MO9?1"=,J>TRG$3E\E6O :67L3$N4 E9D/S/KTF5B"]J;A0&_Z997IUK9T\
M">JFI#7JH^_?CL9M+PEJ2F#5%V[T120"%S@3%;/A*LRIB=VTN6@"3,9U_R\&
MN__/*IZ= UFA"_QT$L:KN>HJBFA7Q.R%19F]Y#)[:8/,KA[)H[>.\?OWS_P[
M8/:2R^REE3-[*O7BQ<VS>CZL<KQ0,%<Z/)7Q(WG#G$/RB64_HP)RLQUQT"<=
MYN".9<2O]0'!F6/P+X.\$LTFIO"GJ*!3ABN:X7S"L70,2'*3AK2N<P3'YY;Y
M<]10OMVO_P@FK+/(!XK&MU44ES<MBN<@NCF2Q=?37#[WI?<GR-W$F D*V4(:
M*=LBF-Q1\X<69.-P==".)U:]GQRQJ*2WG4IY2AJ8GZ.H<9_6M$]K6EE:4U*D
M3>^FFZJH64E/Y'AJ!IKQ"KNTIXB$L,!FHFB\0P=PGP6V=5E@J]1NNY/IM<QV
MUY'IM9WDV*9,KYWBXZ;RM@6Y7'\\RO;96EL X3Y;:RNSM58I''8@S69K][FA
MC*Q=0].>';9"#RZ'INW(,/ECMK==LF#;L/,NM[?/GDIZBRDN?G4M;D'V5$V]
MR1%]=)\KO)/L*7%-V5.%0AKMJ;*5ZNP^S=MS97^Z^)6]N 794WFET6@/E(N+
M^^X[8/:2R^PKSYXJI)(J^*=E3^V3IR;R:#I*OEZ\ZEX__Y:W-7FJ4-F%Y*F3
M34OB.8A>JI[7BOH][*7S)XC=19.G4FF&FLT74S0HWG/RU+0>T6=/8S*Z;Y4K
MN7/IO+WB;G#K3[-:=1_#--ZR^DZ@+3IV-4,;>PI71#)M@TR.%-^%K:1/XXVP
M*O8L/&:] VD70=IJE[8 =_NIL6$,U-[R=:!'38$/&&W:-1R;$3H+H#UF6O![
M&ARP>I*%=IRB$:&#,W=?*?%Q.1#<(.,4$Y[,= Q0$T/=>*%O[U/6P(6\1PX%
M %;H*6#R&7)O) P,13< EC%AW145;6#39N26SAL;M@Q= J#!-%3-0^$2_RN(
MSN^P9_!O6\=VP["2#(M\M#6IC7@G[4\9NCW:60Y(]$(X5A0D X9D'*S 9SZD
M."_)Q[\$5S$5()9D3,4LOCKCO!K?S!:DV,15]99)C%>:N^ET<Z3+^2$:906B
MT'[4;<4@LJ6.V$KNOP!-NMWM\2V"YC4,O:4;-.6-=8DT[1:2T@)&4$<9?$O'
M5E5@2J-/>UGWHAM7.H@H^!%A:SZ@^><MB78%9VTL.2/B5&FQ\MG$#=G] >MV
M:>/O@+*,,T@F!G> '3_'U,-\[*[M1Y/[8;#%IK_#IL=VB@G<C/L'AFYG O"K
M^A#=&<IP;(.,7O"("8>:+@P&&.7/P&'H>Y(PU0[5[T4*IBWQ9,DP:*]4I[DX
M9^4P \;T9&7S#FBO54SI11ZD?Y#?-ABR*F_<ZDA3UGL<F=[WX4 :X2<9?%9J
MOZ(,-5D6*;-LB0&\/!@8^AM8H!;A+6!]+-.&_S%&@H\,FD<,7#<2S)YN6 ?T
M?,*#ML'ETIVW.WKF0,J@2'/7RP#CLC?AJ5=U;&"+:[1)"T0*".DN[SH+K*XP
M*4L,#1"#3[/3PD23JK)G@.<[JLZ=<UR7?NH>%V<XK>+$ / W)DK=8UW5^RU%
MVA^$-1P$CP'H&?#:$?L$KJ1A:^X H<#5,U^84'<IVFR<W3(JT@,1_+V)-PI
M\U?D19_=AR_5;2,S,?MI4BF:M+$Q*& ,!TE<R.8#HE.XTP5ZM&%-BQYH^EZ7
M1;/T,VJ+*$Y6-]-@;SC8E70S'SU6_T1!>)4,A>HK^%;X2#W<3P@+8N=0:*#I
M@RO 07T&E8J)PJ $3*ZA+0EU!.KSE@[F$7M-8%6*+P:60;J +Q/>#$)!4D>F
M0C<]8'VS";V,P?>8 \+L$M+IL+\T> R8Q;38,>>P*.R4O1+J4-/6N72O+.08
M.GA(:/Z<LP,K(P7A=%I1@S%A4BD6M?SDLNZO.S:((\*6SP(":9-L>$37R %M
M02V .RU<*F" L)7W$F#%(-?-3'B41C9:Y]%CA7GP*.+[H&%HL(@&99E]KPN:
M;@4TED]7T8/+XK>H60Y<S7((H!'A&NSC3%6@6E?\+)S0+^Z"%M+$HQ,C0QPY
M).'_\?.# 6/&=50_,\YV&)+MQE%$S 3.,+;]..PI<H^>8C5@T'_:?9Y,>R9!
M49PVDZ!E^=IQQPT9*,8,&8A^^&E\:5C=<OL>OB@M%R=:CXX-C00 GP9 <-W6
MD$\<99J"A@QQ?ZKM^/>B<97=]+=WI4 O_M-OYTUC^'/\*':2].+',!Z;ST.Y
M]MCAVKK'M9?H1-PAQ^))GMY\_[T5I"Z4C>30HUC+>Q>$XT+E]FON\2@W&E<6
M&HB:4CGA&@KNO'SJ5(L&UP Y2W*-K Y,RA'I,4^=7C2*^8+X-*X]#L7AV?/#
M65=^Y\QS0F1ZP2<4Q-UDH-*R#.3+'W29(3#^' 4RRF,4QRB_J?CVIB>.OTEB
MH7U9_#X^??DP7?XME8)81BGKZ8^57MZ'?EV>Y\;:,6<CT99\1G0QE:0UL905
MJRFVZ'@7^"X=B/D#;( 2P'<QC;RI2BY;R5?2O]4/',YJS.&\UC7NEOI.9W/<
M'7;)4/R5?U[@=#ZP^5FNV>(:;($S.(T#$I!]*5)[FY[C;)53.5LU%%HS:3WK
M0&TQ\J(/2AKMV<2*B#-^ET3>Q#CQJ9DBY:=QYZ'2N2F,BCVYNN41@"C?-[RY
MU$,RM7!(AE6#WTEO)XHIJSI&S&.",;F:3RA->^QI7.E6R2_Q3;XY7G)XXSKR
M3FB04<P=AES??/%IK'XSK9.NV1P52Q_^Y87S FP:LTDYV?;)*>N(E#D7E!U%
MI6D0[GAH@UBVH;'DB;OSK'#:I%$'^,\5L4!&"?R6_I8,[)8*9TCO>/>(POG5
M?Z3^X/--EMZ ZAJF</#G'X3+RV,:Y[T_;!X*^ W>-O%K?5CU#+2GTI8P#X)>
MCE@Z^V6'@ ^%204:BCB,=WO@TOM6(FMZ%],)<![UD*BJ,Y<Z?,?,!H9CGH72
M5B2#)X#@-.MC:028$RY,%=YB.C%V+N?5D="3\+H,\(4H\MW1[GZ,>LM!;FB9
MKS80H.+<F?CH2N>.JP1O%_">'(6YHO$;<GJ_3W\;I"Q/"*%C<Y%U'::C\>">
MI'7Y8L^VH9AM1>9WEQED.6/ \W6FK<X7/ 3AAA!I_'J0)FVQ6>D>E,'=X"1V
MX.JN#J8FWF6V1O1K!\(CO,8CI@E'UP.D+K/D?039^6$=#565W3)?!,#&7QZ-
M5&D(I^94DGMX=TNSQ] ZU0WXCV1@6@.]4@VD:0B2#=:N1"U@U0$U(WF_!5+T
M=20YJ"OG60<@/P@N'NC\^('$X_'N\-V),QM8F"./W7:VB* JF$%&,SLL0VI[
MZ4'(8#\QPZU)GSM]8[0%BPID"7O_J-_257H3EL]]QI3I0_JWN%OG8WU'.HVU
M-S_JOO19:+ TM[_Q74UV/#\SWPR_Q\'HD_/89\3Q^&QVYWLVGGVNX'JRD'D4
M&N(#Z)8^B/*58UP%%FP+1>C]N'2P^%FX&PW@_75#:BGR9^$:3C+#]+6.V!-+
M@6GSSF-LXKSC@CC^AW]&O1_A!I%>#EH$JV+_!C&!5.1(AETY&':9,<!BSI$8
M!!;W@X2P,G!\;+/%S/UNX4(:[07L"G)-)+#C35NU'%5LD+;>5V1%52(,CZ$"
M)G.+Q!K>GKE-'PYD.'KYF[Q^W6]=9YR5+3C.- F$66D&R#;B*WGW[ /F=]"W
MHZ4]L.$;$_=*[3.0;UA-Q>&A6X-O75?"W0A+&F5>!5KW[GIH,-H6W\45S;:C
MJ7$MHBKDE?"<;\2-F_'E0DF=(Y9S-QB XT.E.Z#*M,&0XB"A,63:G0Y@FK#L
MXR[1B,%S/7&9# 4#R*$X&>:!M&_85,>D!9DC7),EVP$)8NCAY54?8DM4:L)U
MU5&69Q+2O;5U !F]&2SYE.GN,B%V0$"9AX.)K,!5^!(@+_PZ)EW<!\+ T%\5
MS*7;?5\H[>!0:4J^CNL?FXV.&_OAM75'P#0=Q;I#%HM+Y,E')O+,O>K3N-*_
M;S^;Q4NK^KSEH26:3NYN$,^_CPUY03,]@A**$<P$,G<K>>=/6,G+A*D^C8O=
MJ\K@)/_EO-9.D@ES'""^%ST4.(<[Q%Z5D-C>?)K:9#I- (^?A?6U>/32(XZ?
M(LKPQZ?F8'15;)QU'TOKZ("V>*>C>;9Z]A0QN6-\^6*_5KOC_(]OXCJ:H*UG
MJR=/$>U]QNI;_?JR=-U4!\_OAZJG3Q$M!<;D^O>X.AC<G5;(%E"57N@MGD:7
M5C_;W4QE8N/0:4F$"7X$;;"[:PE-,;E\403^X^F-[93_'&IO0:/G'54!&Y?J
MVP7]GX7[U7:'G S('[L%NHXWNUB>4S0%(I*=9O]P^:2K/3 ; 28R^;'DBQ5Q
M9HL)#CTIUSP)LJT\]4S#.CB@5^4823PG>M>0!CT\"+QI%A:@&*.#@_LF^/+B
M:-2__'K34 K+)TV&DCX+X>Q6MO%[3<&H,H5PM>WH0K_.1R?;?IR>13@=]4GG
M)3.</]TW0['&-'*?*]G"LIFX$U/%W@4=(D9*QM$AC9QHT!W5\IX.L0'X).<A
MG9Z>V:*X/Q#)V@3&$2*-Q'%1S-;R2]9D?)JB(<NKUI#'C:=Q_X?Y^YNNY*J7
MBY05Q%N6_SKYERNV1]:IWHX;(2ZJIC-[-[=(\<&GG4-LO+Z:0&P:?3G%'!@.
MM3\"L_$:*(S9<BX%S):SI8KX1R V7J-,(#:-.=QY,5NM+H'92#526;4:N:D_
MC6L7Q591?VSU'U,H3KN1@'")%,<\ >%IS#3/.G/VMBX7XGM;+^/#;W#KZU0-
M-_70.4NEO'-5PFL7^+&TY\<EY/X$/Z;A2912%OFUQ43^^/KF=%0;GHSZHI*N
M,Q!@SE 2R'+I5SIF(LH1P>H @_\QC#OAO(2X-0V/I9HM%9;@V#^(&A-J+42-
M5-R<:K8LSH[+[<D1DRGK)T@E#>\HG\O6JBOSZ-\502;4;(@<:?A4A4*VFEOB
M?"QS\1IV;+;VAFX/S$X L^XD &>4CF-8W>VS /; K"P+P.&V]-, ON9*]6_/
MWZLCLYA>&D#"J__-Q#IGX'+)>_U*&O?ZA:Q8F'U[MOXH<OJ(37Y17UDLNH73
M1>"SB;#"NIM:;9A[$]["5]*XA:_5BEO(NRO :_)+]4HJE^K90BGM<%AAY4H&
M;](?E#O]6[M?+#;RF[M)WU[W,%V-%+Y^JZ01V,IGBZO32)N\&EBC1IL@S&(Q
MKAB-5A07H<][N,1(5R6&J51-(_!5S.;$/S NG*Y2G:!,&C&P<G%VON!\*O5X
M094Z_EW]V?G9[YNG)Y44,@56?*_4#L4_WLO%4BJZ.,2G:;B$I6RIO%? *=PL
M55/U(XOEU3J2[^Z@3+]EJJ;A?Y:RN=S*DAO?%T%FW#)54VDB#N18I MVTL2]
M1+JUT#S3-6/<^:8OHEL7N2!@:I)K1[?ITL(LEC\L#; YE-U22:(2@SE72<9C
M:6K%5#+$P;"NK=>PWCU"S%*(*:5:B,7UWNSO'B%FJK]:*DD6I6RMMH13\T>0
M8H;BJZ627E'*5I>I7]FG5^R!V19@9D[0.G4:<+JG\%:RR#%K *YHW<: \):A
M3P.E_=0>/-DWMD&>QE^&([NM5 9%<4V&F0NIVR)TH[>FR1&WB)552QI[N+@^
M<R790=XGRI!*(,O*AXN867_M,FIGV$VUI(&$&:C-UPX7<8]V&K6S+:&D@8!9
M?"O^D7P[U;9)ZM3/YMO"XJB=;ZY5X6G\]EVY+HEDJ#YN>]];Q@4.+^Q0/UML
MV.LUTO8/&>(=L6EO:8OVX*/3?4+=V02GV1F?_:)WA& 3V5K@<B2:S6\)L+3;
MZKING;$NVIAJ8%NZ,0K\.&A+R%'M2Z\-\^2D_V5P)Y$/@J58B"5WL? F%SN9
M<X&\D!9/&BM93(M3%OV+-6T/$^QL]00+=28]^W$YZ!]]E4^MZE83;*H"*^:2
MNO*+*3"'9 8Q!VR#V$;>(!T5_F4*<$R=AO =MP^_TQF?M]ZF7>%M>H?'1Q>%
MN\8[V37!*0&L#3[V[<8N]7#L;7@_]E%& >%O-,^' ;#Y ZY<R2PI5TJ1<B6_
M:C:=Z!5\\>-;OU5^JUC?>MO+IM--V&(NOU(3=II<J:Z>8*$VP-KSVW6K]_M[
M#3L>;S'!IMANQ5QZ/D>4[18M5:3!P-#?E#X=IH$GE;5BQ/D@X*E+79(Q730:
M?$Y;F-RG<Y*;9A;6M?:E#GMP?T?,!/KC\<6^'<CV[2DF77(Z/X0@%H(0IT'M
M.(@75!_I&>E1%?V,T+L_ 63%XV*+N6IX(L@M47$TSHUD6*,[0]),AE-S]O18
MO^D[QRI/XWI9[AL/G4:IW]ERS\<=)BL>AB1 -7_V-&YJ=NVE1.IV7_[P+T>!
M@#A0WM<\V;2Y4,S%SZ6)XZ2IPVAJD<-HDBWU-!Y_O9*&+YTCZ:RV G[D'RI@
M^.&2N<.2HJ7MY+)I,SA%4S$%G&#;[^,D3=!;DFD2"YYV!C4ISC KQS[PX84-
MQY14%?0EX^4!X^753[%9-9+^A)6\R38G3^/OVMWQS5'[2UF9.=D&V21&>.T'
MV<3>WJQV<DW59_\=57_HWZ2'AZHI?XA=/+KYN->L?Q[8TMH$';]3$O,%\6E\
M+^;,D\<[?7!9G7<3)T0F_18QA((X[T96-X#@L\ 9T[WS%P?6;.0D3)9;HC-^
M!%@1ZR6F][;L<Z*'_B+[7'M-O4W8J.Y)?;IU%^);!<S,3E<-<-L-\%>)\HJ:
MPKPF%N])\J1<\#3)WBSOA!?V@06B]P\.ZJH-QE!'D2])NUEO7E&9\_0TT\4Y
M&OF_86M&/L17'/^42NTOTDAO_^PL7Q;A+,#55SD7V7K8W9MPB47K]6:8'"GT
MA(ZFL_-(N(%^HGO#>"H'@Q!UL]'Q5SY1BCY%$Y2O_31)F9"/DC24.+T89W;E
M\.)(W6UJE0[$_ &8!NE0*Y62E/SLJ_7$2)W9 F,%(JQIV6U%K[_B--^5BK"B
M6FL>WS1>!O>+B+!%5"G;FL#VYI=@&TEH6$XP19,I,:NG45)23#!F8T/VPBJ%
MS)*83Z-ZI)A;),EDIF2IKU:RW!B*V9?.5<DT+R^/5R=8JI;Q[>SBYXEM+=*5
M-''W'K:= [H? 3:T2RP=$B:1E$G,T6G4K!1*BQ2G[;PL60[Q:=2H%'.+]*79
MM"BA2ZY.@KSJ?>6A_NO<'*0[Y"0.H3$!$M?UUW&[X0! @F#&5--^:^N;EY-E
M?M9(>I+RZ31-F&WY1P:<DB+Z3R5P2&8N1.!4'/'*[%X#"Q!X/?)S?B%X:9/Z
M\*9"'KZ0],RH&<':*<*0=]B(B8:F&8-.)^X\3Y%?\E57*4 3'Z8T1FKDL[G*
M@O(R$>+3OYKXT]C"$;N)V2*-F$*RO@CIL,5J;G*V]T)DJX!)L8YW^MV9I>]O
MSM*X.2N&+9)++QMH67?NA](V%+VNP:'65^?5V97"2?E7[_A;N;2F@#/;E\ V
MMODPQ23%DCA4$<1)K!(JJ70N$@N+#.#:EN!00JR'O)QEL)Y&0*Z4K208&KR
M'*FL4(ZL."ST<I&OUW]9E\/C]NH"RU-B0:#*_L!(T&)2:Y$H02&-3C.%;*4\
M.Z2Z#P0M*1\7HF\:83Y01ZNA[QJDY?PB[YZ4Q]67K]7<K;H2FRF->-"DA;]W
M^Y<4HHE/5!HI,]5L-4&[NGTH:$,\,6\<J)#*Q-U<HLG6Z0:"DK7=*#V-K?[I
MA53Z+JL]LN7%9^NHQ"J4G4JLN_/+IJ\,JPFTO=,#NFA: =;9$W&3T!*O\30^
M)M;@VK:TZO'+EA/C3UC)*R J FE^#9MBL9'[VB@D*2!"6J,VCZN"W-Z*'S$W
M6?(3:B^_X:(1KZ+F]"FJ(\S%6ZV<Z[6'=E/]<RI,/*2</46UL[C[7O]=4I7*
M275KRU%6B93*4U0K ?'2^")7>E:OV_D3.:7T%-5'XV=Q=-F\J_2Z/RK;RBG4
MRIFCBBTJ0.7 M&1<PL5L.3&RHJ!(M8C8733-PO\[VK['W[8G5,LO;/\>O/K/
M .3S$G_/)U-PW PU=_ISN61?;;NOMMVM?>[IN<75T^A2FOL<D#TP*\Z.*07Z
M6+T2S<:V;-M<)?6MWAK<#BL7YU>+C)^=7D%>"-?^^BNFA(F*J=#3JRM)SB]2
MDNR0,^G$V10J>PII9' 4$XR>V<:Z\?2)%#%]-@TBI5%^5:FF6"Z^TT2*&#Z;
M I&*::1TE!/4R/T91(J80YL&D=+(RQ"S8H*QD\NU7A!3T_)K:Q13KG]__#6X
M?OCV6%Q3TFMLGYB-I& NIKV7:R123",K(E\I[V;2ZV*J>$F,IU*25%CML/B-
M\7BT7ET2XZD,I2WO:-7_8DIR28RGT3FD5%UY4O=RBG%M[8=^-GZ]O#V89V]6
MBAW4(@)06]5S:#%MN%S'FV(JY0@[6@&RF#)<$N%I.*;YVK)]0;81X['*<#F,
ME]+P,L4$_2-V#^.QRG!)C*>2RE]89,;@.I4AWE[<Z;QPVWU (>;J].)H?'94
M/M=&I2^%M3B,,==;[L7->ZMXFC&O>4$-/8M1$I^KQ5Q7$W8(GTT<L-0ZXGS:
M88JOQ$)(C>!I>,ZUV>T(]P5O2Q@GJ1$[E18=>V*OU"Y*C=AIQ O$!#&QM&H=
MBTO83?/;.4?:W=EK7>O?W*78)322=P-Y=J&J@*72[N*26]S\N_0RB]+))MI@
MQ=N<=E7B0Y9&<*.27_"0[<L?5\ ,DS978F9((_ B9HNY=14^[MEA$:LL*3N4
M4XD*90O%/3ML#SM,VFV)V2&-D%4^6TS0EF<39=%G3^-NJW9S^NWY\O1<VO)*
MW*BRZ-7,U'1+KLF;K-IM\N\__W-P()PI1&W_+=Q(7; !F^2W3309@2M_%GY(
MJHU_EH2# WZHVLIK4OYG$+G?EZG].5=9;+)BUZ@BD/B<;DL?1#';U"*S4&VM
M'VT.PCX+=Z,!O+]N2"U%_BQ<PS%F2+W6$7MBV?_4?YW'\"N/PQWV_N>_@.8(
MA!M$>CEH$9P3_S<(02081S+LRL&PRSL^CO"X;!!8W \2PLK \7'(;LYWW7*0
M_VF!U/=RDS)N;I+R/L;K[N \U0LM@X/30=XH&DZ:E77;,&DC@)9M*AHQX=DA
M$4R04\+ T-NV;%%O=R+!3/CXG_^MYO.YS^XW]-_BYT]901(Z4@N4E63I!BY-
M5");^&]54%$5@O3+@%Q0!GW8Y*%0[W3H['+8"/SXJP[PG$CP#YQV>]PS%$ ,
M[!X_RM*I[\=Z'] QPO>)E<\F_$8A'>'TC<@VCD87&K">3 S^/'[7&!!#PM<Z
MWX4FRV=Z$CP'+]&'&C',GH*4E5Z(H&C>S@^%$]O -1 &BQ:9XAO,4!FAX%3E
M"6B^,FR"XA?^+SR)OA ?>I$CN@7,O';:4+)CY>2H_%5\:VG8[YU/N>?;B>P:
MOHW)@^75)0]2><$F-T]P0&T6!X@[P0$=\JSEW\:%PG%K+1RPBM2Z\NI2ZS@'
M! 1.0*1F,S)*- ,P!!_/RR7A!AK;RB65O)E_?BN>RM^DU7/)BE)>RVGTUHU.
M>:5<$BTF9BB*<%^,;66 <N51O#MNGK1^KD%,K"@?M)Q&M#$Z'Y0Q0'MN$Z,4
M%"U@3H&[B6M**@H:,#]Z4EO0;0LL&NQLW!4D&:P^S3(SACN7@!' ,_+ #IM@
M0_]XE#I?PIML<$U\33'EK==9YN.I=B+5QVWMV65&9U."AY=9/!B)A]7/N*VD
M,SLI*MMPBAPJS<< ;(#\MC+ JSY^>:X:RHE:6P\#I#HVM[*ZL;F< 9@O%G1E
MD"M.8*,(CU 0(\7/SGO(.QMG.;.UMB0#$3-W1-;T+M8%'IPV'P!3^M#<!UTV
MQU+3*2,HIB!A:L(!G.B#@:%W% OT/,BDD6 22[ '0FOD#WR@ER!+AC%"K2Z8
MNJQ(*GQ@FP"4HM%?@D/1Q\.N8!B%)E$(PQXQ")H#.@V&D,/, P',M.''/<E0
M>+P:0#>4EDUEZ@+&2#G2<CCQFHP>2V;OV/^2,]UHTAT<TPVD%P!QD>[AW)']
M=U>R^3;X^<UX<$4_PA7:/5 CB-PX74 [L,[:V'SAC%C@0VH@#:]5S.:+43G9
M4RR!_(($72J>,86@;]7'YW'S\N6FL7F"1D<GDA(T%0<S6\Q/"44% Q&^T$-F
M@LZYA>B\9$1B"IWKW[MG+[=5]6N[MF%"QP88DA(Z#4>R5HLJOI]R;BL+TG.I
M ,,4>G[_(5:?3XW!^<7+YND9'2](2,]J.HD&N>*4@[M\;&#G+:F=-<[]@^LS
MM W3WAS?M3M0/PVQE19>=+85DPD:?M^H:*8EJ2JA]YZ2(6/*LFS9!H@N<V1:
MI$]-]#-5-Y2V!&!(%IK_>.W8IL]3P:?# FTT^MD.A3X5.-0C#]Z''@H/<;>+
M4Q*[4S"NU]4P[?Y"[=I&^:18>][@Y>)2C7:J:81JHON*3='TJ[U:7!?YW[Y>
M'U4:MEB77C9XL[@<^=-PT:*;8<5=+(;EE,]PR"3/6YAZ)WFTTCO)=;'7^/BJ
M9E1.'J^OBAN\DER.O=)P&*,;XDV1+KF5WDBNB_S2RXNF-FME6ZMN\$)R.?*G
M4_T0W<4M4KXLX(0<9NY\P<NXVT@A?!L9$&,Q8<657TBNBQ=/SVK?3X\K'3'?
MV\A]Y%)<6$O#^2V48I-GHH70G.1?Z#IR7>3__DLY>JG(SR_'A8W<1BY'_E0L
MW'@39W\9N4M! A;O:$J:)66N)$,!'YFH ORU3_W>B;#'P#;DG@1?=&R@&X9>
M;?B'9('2-F /FMV1,*"!JAO^XK,LF<8^!:4N*__YWWRQ\%D3* L($RR0S4A"
M%TXT_)9*,%67J9'%;RY?%5G1\.H3X)I\HRSU![8I#'N*W/,")ZV1("7.(7?2
MN#-SIW$[F(G01:(76+_AOP*1*I-&YPRP."WN8AK6P<$=2OQ&YP(LHE>E;4MJ
M4 L=GS;J6ONXT4BJ@,(=C8 0E XG1(7_KC2OIJ&>V;?V5>G[4=G59 Y**&V0
MK:;&[R,0.%^X)HPNM\E#'!H2*[HT?/EB><[+UEIRWA+?-V])G8=2[[39Z-;5
MU?-6="QH=;R5AB-?G79]%'OO.S5A8SK+301ZWAO+O3X/S,Y;Y[I=ZZR8Y6+C
M0ZMCN52"!X6H2OEDN2.S>$M\W[RE??VM/DCEP>G+&G@K.OBT*MX"VJ41EQ3C
M0P*>,39_='OO)F[>J>)NH@4\DJD;?33UF[K*$C;V7N)Z0 :/D!X+=B3\&::T
M&P!URL \D&@ W"F,'2I63Z!T$QC=LO2."7-2#0(R(?"=1U/V*^:XP;FE;X,S
M/ !/+0.BCH;8967 JG2Y+VB"6,@*IMU20;QIX*-V6=C'O71'<0@/LZ\Q4._<
MUO,%P,!AL2-%ZZBT#T$61$P;[^H%=TU!ZH+4H*7(F3M=>-;IP^!<>FXQS?T1
M+C29[[$-SP][NJJ.N <*,)I*6T&W&L5S6_"RA?Q8PHR!2Z6OX J7BM1"[WGD
M(KU%Q9G"W/2FA;@$T'FNP&',DA29DA"1Z>7JGM/?MH)2VNKI[0OME9@6;K;A
ME#K?$ .[/TA=0@.F2ONI/7BR0;40KH8]Y>L,CF]THM><_)00;! 1;C</#,*V
MX+*'%W4<YX?EQQ_VF7;:;[MJD2TL].G*@"+GA;Z"[8&[C5E1TL3XB(F<AEHJ
M3]E,2"<FC9->7)^Y2O$@[].*2!2\#8[3BG\)LC10+,R3\R7 (1=-.92'0CTJ
MOLH*QS+(53YTSZ@+\]!IIG#Y,H-1BJ>#D]NOK<=CQ;N_\P$PBPW\/TUP0S(/
MH=.($]0B.Y(QX\<@,G:,:0M(7" H0$][T5#1U))4"3NNF#U"K-7;-G^X#G7L
M&&RLGO%/G-B;,%L>Z)[([YL8&^+U.*$?^1N<),_[R_CR_HYU5>^W%%#F_"53
M<O_J*L@5@.H'4155E;)H<.#OVPJ<?MY8Y1145G<D?-%5>I5^K(,]9="P>F2G
ME(P*E &9!Z(!+".P7\ 2BI3^<9=KUB+W^'RK4:KC> TW^.L;;G/7;+7OOW6N
MR)HJ2M,<IU'*I1%_+.8G*]L%+D^ 328+3$[7<(>_-@8PRG<W^8O1Y<UU=2.7
M^$LR0!K1P&(NJE%Y1  Z[69*QRM-=UX;"Y7N^R>=5MG\=K?)9DK+,9*8RIB8
M.:/*,S(2E\QW7AO]:XW<\;W1_":=RQM,>%Z2_FFD T4/9F(,@.$B?VLZ"F?<
M_59F_2V5UL8M]?'-XW/M].?7,W6#^<M+<DLJXS$B!Z=-$1<SJF.63&!>&P-\
MN^D^_/KZ)M?7U%-K!5/%2F(:AF?T5+&T6BKMO$>\LW&5'TK;P+@*NIBZ\%57
M- L<8@T<:[*/L&R.GQI:YDH:"04\+6*-FN48@K3[?7XY\DPI]<HHY5VP\,LC
M";X\.-=;\%^,I0QU TQZE4AX,<-O;KB"Y]'KCJI+ED#O/O"!%S*B^EW78,U,
M9*(@/"^S0 ^V/6F-$$1)_FTK!H5OFOMP!:QF*-;H@MZ!F5$7 T<C$&?PI^_"
M1$9,Y$JY K\J<9\*J@;&T(R?7;_QX;+6J15K\B\O^=L! F_@*!3>3<<L(3X'
M_%%>I5@[R(& +SC2?1+BD/Q.ZC?.N-7(EPYCBU#^$OH./KP+'Q<SP#(,2(%!
MB2SB1-H.V*6:[WY.[V3\#'@HW/5\2:\#S*2@6:_(4[&O$(:2.6E5G/FXZ(B'
M&H\1#(W&Y([AB"AMP@)T5.]WB '\*(+E4=;*U/) _5JEE@?^59N?F0:Z(AXI
MY?+#>6\BJ83OCMZ'LHW-XJ5Y=A%I-.0P1)&KNG_5DK)5/K$767:YJCP1CHAW
M(D#PJ31."MA@M])3R7DCC>A-T9U>9U+$P0PQSPW=1..QE!8)+RXZN;%9._G9
M]8J>^?L16EDR>[/H-@O<E&F5V.,KQ=.J4#R,]_DYM>BQ&T@*S19'/,RN#(K@
MX%LBZUT-U%G[ O6CTE$PR%8'Y%@F1U<;-NM<T(/=#-_9?=*^A+>Q@*2?U@M0
MN&'>JLW^2YT<*2Z%+]TK .?:]A6G4BQP0I?:7V2@<5Y^2.S33>$',7<XF?V5
MX0SA\ /E!;#J=;O;XXW/@O?>*F(5_G0O,VK4PL\="@U-:,B6CI_EJ^S#;,!*
M,'%M^CQUI:2 ,S5"SLO0UZ.R4+AI@R H@$QZ 8LW01H8/V#]='DRQS1.;5JZ
M_'(!#Y,VBXV"OE;T=A/O:AC=3-K7U:0F!^.^7-Z1-/2O>?GPK37^0;X/S=.>
M9WFP]]%=>,EUDO?Z60R9>!MQ,BAWD*]Z?R7FN:1N)#5#7%9C8&$-;*E4R8I3
M&J&YUXDF0Q!0TW<=EF6GM8V%,E'5(1Z5Z=,,/S1M$]!#/W-L27EQ<G:/I<?N
MT;#[_%V-)F>66P #8'JZC9G$C(,V3DS,1;*Y+$>_=+AQR%8YS,4WTW9WF>4:
MWB #> ISVVA>BS0 +^%-09\E(C[DE8"2OF+WCU4=D\4H=\_(F$+J5>:GWK'Q
M=JZ=__HN5KS^V/SE@LS>#LX;O#[KY#I]^%>8EAP\#? I]*LDI5\AJ8DVP_(O
MQ-X9_07\RA# S'B==[?T8X.S-,OS<R5ZA8OYG7>UWTG$ )RL#-6E0]#<@DF,
M5^)/ 47:M<DK4?4!53?P"^#/MM_Q%P;PO"5H1#):(^J=D3<LZX.?QU8ELF,/
M2IV\832/OCS#6J?B]'2PC&1<D^!0&(5H,JUDI!6/P&K 5*#66P (;I5U355>
M09B [>DN3+<#3*X+;(3,A(8_\B3)*06"M*,R+R>$2'0QUQSB9/@RJ/\DW>[K
M5\_&=""8*VV2"I,IL,]WMS13J*24)#D]G.#XO\S[UX"-&7=1<K:P]A6#PAEJ
MT]%0$FGS&E>66:3 8:+="$.]"EE#W6"[WJS#.[1^U>P!3P]]BQWI7=V2V/NS
ML+\61AMDVS"8,8%E#<%HFHKG1*"MPRBXFF[Y$P!9SK8_4P>/':H[=RY $&2
MUJ;"TZ</U='4YI%G-D+B#1KPMUNL]S%[P><C+<W)&ND=WW6/'G^?>YQ<C]F,
M1-\^E95G Y\R1Z?B#>4/9\8R!*63T8!3@7$^NOJ2,I3T*BFJDVY.\\4[BH$Q
MQ0&N\VGM6C)?.ZQ,3.G>,C69ZF5& *ZD@RDK^\&4:0ZFK/R9@RFW^Y1M<X+P
ME'X/M6FAX1M^=_7*8VXSVS_,H0LOOXGFF7*CGIR*D^']B2O_T=QQXC#L\R6.
MS52%:=SUU[*%TIPM%.H+DVM)T^7JPNJ-!@_=7&VR&\8ZR;6@Y9)*@7@E6ZA-
MR0J%4X<6IZ' 2@PEP9NV1.D;F5">Z!R]#L0%>2.Z]<$<O%$L55[.K^[&I:/\
MYG@C-JMK%F\4T\CR%'/9<GST)V9J9FYA@D7U$YB#8-43Z^+E\5K-_VAOE&#1
M65@S"99*6F8M6ZY,Z169POBZ!Y+A\91@?<E &J%I1E,^@Q(BJK*D'%%8<,-6
M.$;?6HLN+9F3)5:0TG=^9]]<G(CD7!;]E[_4:/>A(VD107#/2<I((K89G\I7
MKI;SQ7(UQ&FIS%+-SMU9I#HGS7DUR>9I;IH_>M=?7JX:]VLB>:AP9'Z25XLA
MDJ>2Q)FMB/&3,2.:0";J 8DM\IUZ63IUW*LC5_68SK+50$DS!H OX:<H@:-K
MQU,U\>])KZH<#W\\'G5CZ]\1I-GUS0D 3]>^+Z9B,,8W@LWR6DO<6"3A:DL1
M;DEC_VM'>2O]'%IV3]D<X1:S]$NI=/"=8N2S.O5C?YTZ[7#A)#4U!CRC;)ZI
M<YF%#/YE#O?21G^G-;A2I='-Y;?2AGAD88N_E(8!62O.J=2/EZ+6DA;_JU$]
M*SQJM\\;$\4+F_NE5.IJLOG2U,[PO W%OL1B=TLL?ND=(*P.5F:F6=\756R.
M@\#Q93D$@8X[BB9X%!*:]2Q-1)14@9BT0U2/]WZ0^67OE';*O*X"\RW:@9R*
M%L$56K:B6DXR90;5==#-#MQ"^PY_5,9;964]@3QD-.N.F"Z?7^>,/+DUOK76
MT AH$H*0Y$VEDVLUUIJ*UI-G23"^4/^$*(P7;W/Y\Y_&4:O;6P7&0_[I3(RG
MX794Q?A,PH5]S_I$6_),3%MR)W^H+SV'"UU@WR]D0A"\3Y7)*7!M]^$AV6$C
M_L\I+H^E>P?U \A&61K@1;)ADR"KE,'1B<A79KUP3&:97>L6.5%,S#($27<'
M+SP"J?I";W:= U>=3-U.LL;3>#1XL[[7U7RKJ7S8;K4*Y@'N(B/F#T-9;=7\
MR=/X1:\/R_WGD])%^\._3:^AD,F[#0D,$2YY]T;%&@AV@DV1P=HV]_A>/<@-
MWCY5=*,0_JP[T#JJQ*I-#=*UX6_AMPV*EA@J?,GI%!G$RH7+!6CFO;\^H)PK
MB%6?'J\/):.-Z2]!S?W=>=\M:"!'=3^4ZM5?QE?Q;NSYM"<.K/,5!E"XXDRF
MPH'H5@)$ !(2RW-E?4:6 N0.Q=@,.5\E@&XDJ,]8%.%U3;,E]4@R%7?$=?NZ
M*MY5^[V[AA*LR6!YZ^GB>>+](2PGC0E,PW)\]U&/>S#>AQFG%!PL1,/\?<5D
MV;8.[V?<8C[X]5<;3@6WHLITBJ6O1QTUGIB_P4TQIPH@D+3#UO'9:/OFEZO7
M.*>2H8'W:&:0^)1+WH7J2=WNK$S8G5XO98Y"I[8*SZ\,3O>)HMK@G=WA;5Z,
M%5KS![,77/%I/+RZ?&LKS9^CCKSE-BF6D71T5=6'--Y(KT@Q50+%FN54@/8'
M-I\MQ24%"A^9=PZG"! (1Y!/9&'=QSS-Z#+X$_3Y_MXI9O\35G*/QU'N:5S]
M\6P/OMJM"^799>ZV8@Y4"=:',PXJV#DXM*6JPQDWCCS+"D<N__ #Y%!\52)H
MVG\HD\V5Q)V<$9.E>W_ W&5?@G< FY^%<+XW2S__P!.>IV=YQSWKX ?SM*>O
M0%$[)$JW9^'C:ONSP%'DYL&+>,P2O,D%&+" R/]_'_(?7-XJUO)/$;?]8['V
M\&QHU\^62<)9]+%Y^@GW$0<ROCP):B+Q,,=[MI8(X5O9\7UW:))N47RY+Z^1
M"*4_E0C5IXCTB?$/NREW^F*M=_ZR/PFK)X+X%''C/3Z]^?9\H^<N&F-YDR<A
M&<*#B,5ZG*"BV:QF28]NRPFEN%=N49T0^(5W:$9G(LWGD(.X2MS_L21E]6C4
MH> ?&.R<^3_"PKM5T+ZIO&V>\MLF/E:M"?8:=L?Q^H>9CWM^W7&\KM7(^RRT
M8 -=0[>U-L8G=.-OP>BV/N9SQ6R^4,WF2Z5/DY(\8D.3A><TR"OA1!T, 2:)
M%3H;CZ1%!.G9>V:S"%7127X8M> >F!T QL?NKN<62$B_)I:7+,PSM\97OQN_
M3M\>CK66%U-*?DP><!;5Y-G@ ;U"^:_(0T$L@0$B2!9KCT)#CI:.Q8T@+\+[
MYLOE_XJ64,%?B9'O_+^8-<5\Z.>< --O3@.83%;F$KJR22.K+%_,EDI1]]+1
M.XW$2S2C[2#")TH/@@BOY-*80%3,YB)S)_]$A$=>4@90GLJLGG*V6"SO41Y=
ML!%">#Z-5-5R-E^):H&Q(,)78X1MKQ;> [,3P"S#EC%&3X0W<D(TO8^=LW5C
M"W&P!V8G@(FTZ_U%, ^4YTB[#BR,+<ELS,YK=%A:7<,K\J>I!C3M<"P7QR>7
MX^=1QWY>P.J?[1Q'N.N!T^!SAP,N<+ 1MG @#/G>!(EMSNV0[6TK0:A@JHJ?
M)YHQC=SSK)/(()B+KHMX(97B4GW-P1PNE(O9:N0P\03AFZ2(W1,TL9>S6!*N
M2]!RME:M9L4$3N6>H*F=T!E>5'G9,UJL5;+Y\IZD:SRC4[VTY89)T#-:RY9+
M4:GR2Q,TTM8X\;49[W2(;#4Z-%=1>25-^,9@8UZT-JU4<ZJ$F)W1LV^&@_Z/
M^S-Q$3LCQM">W (#BS9ZYX!ADW<.&<NWI>W\G?* +;3R]L#L!#"1!Z0VVQCG
MR;T38H0=DT9Y='I;NU3[.+9D#>9X_K 499!'WDJMPB3G[Y]7/]#'A+9NMU2R
MI(J(7VH9+1%'Y46,\^K&C'.*F\55_YZXLPWUZL8,]3UQ4SFYTXWVZL:,]CUY
M4SF[TPSXZL8,^$3$G6FA1!;P,3OD<?3E3/Q![O.DNKRY_N_1K/C>8O;=Q*W;
MW$P2B8&%=/3R4^9RAPF$>+H&\CH1.$,/UI)>RT]#8*WXCA$X4]?4YIJ4%XE"
M\3 ?U1OWO:!PACRO);TVGX; ZK(\&"FV"U/$-E=I3'"_]>^U@ORK8:BI^H__
MGLSV"+>%_AS41<1X;3%7Z]V)\6DHG"7(TVC_\0X$^0PNG"'*%W,;WITHG\&'
M4X7Y8L;YBH0YG_@5T7O.UV>CC@W/3G_)5O&77OF][5TR>(F5L]N=:$O1^O?.
M())I&Z,,O:-X%UUDMAQD-I^=SD*;WNLDV-G,(-YDM&F-7QV"4GKZYK\;W"**
M;+KOZZG(V\.S/H+X<EW#CJ&A@1J!M\"O8!=.[ZWG+T?MTNM9Y6?;:W7&H@UX
M#<5#XK[=S)*!4S:4L!V_,U8C%NB0I%S,=W6D9*&2S]:FM#7E&,!K!>S6U>T:
MI(L]A1V$\-':LP8M!#9#)U8Z6#G638OU.7]2KOE(V+:R>L*3T_;OEZK8?;SW
MFJY1P%*@>\P&5\( @*2%9L?B<&OX;&*R1CG!$%G:E,W B]J,8IG>D&UVM>1A
M#5M)=PVICR4A1.M).$M3U;7N@46,/KO+=;JWO2+*#@5GS_RB5S$#/:2QKRV]
M!AX =; @C?9ZDS* 95MVNCGYEW7ZC/*9+KSAM23S3M@(<V#>Q)&D4B";/4(L
M\U"H3S;U!3GGPLBX!/>, \,5TLZP:<R*X3LI/G10^*..2G'J48EJB3U^?)/U
M[Z?UZ@]L&\;Y]RX(638>BOG9>5K;ZQ!#IC($HI0M5V*'O.Q^U[X5-S$NYTKA
M9G(H01364+NNM7&B-; _&V@_NY-QR<>@\RWT-+Z_>;6_*;</O_K5;3>*G7;&
MA<EVQJ>@,GJW5Z?-HWOS1^O#OSXLL%;=?CSL.QJO>4*%CQK[^13K ;EN9B)T
MH\\'"$]GU%L "Q_@A#6BCCX*V)6P).A0%;1/Q,@(?S_U2[ C[L",<*9K>AQ0
M[^.,NYE3NVXE.*W,7J3_OE(TI6_WG1%^]#/7SFS*1)-PF$Z@E^\9:1FV9(SN
MAO"3T2G&2.YZNFW"AN]Z"@Y,P XWCL7YY?KA[6?3N&WTNY.S07'?GK*6AN[
MVUF:>A8>$AJ=L-VG( 9XO^!Y]AA206D,N1!+8K8:/TX4\283PY+ M/-CC8T)
MSD@"3EI0.J!237LP4!5PZ]AH=L'9EY"O(O,B"Z,83\Z,QUO&C'=L*LO=4'?I
MXY',X<&C]E>U6KP>-;JE'>+!!%L+L5XJTSXP\VHQQA.B&,\9FP,[KNZ^ ;OE
M(#.SX)QHQ)#4S"7PM"I<2180:6\@K ED/.<9"WZ#VA[_&S0/P+=7M%==?663
MJ%1*HCXC$?C4BHDV _?8G>D(LFX;P8;NAT(3&U!@?UG;XLXX>/X*KMI6#");
MZBA#CR1.JP(Q9(*OQ&38P-"?X7LSZ\[DQI;R>%I'?(8HF"ZJ2BT6IAS(*T%X
M\!3#2T 6M]U+5+JW$< _<G9%(RPH 7!\5E_7B 4_R[2EOM0E)ATYB[#2.=:F
MW4)(\/TZ+ .B8C2@NU05RS69')30S9#^0-7I;'#8!DHF&2DQU(T78O"@ATG;
M7!/-=#9@@RC56XI*,K(J*7WFMG39"8$W2?"58HT.A0L+:?-*#)Q!T8$-V"H%
M;6"0MB+C"T&RF02P-.RQ> >:><Z\5?@G4,@/>!^E-*C=0^&+/@04&@"H8O5H
M3%G1F)BF426+T@A)J9N*Q0--5@^ <;G'8%C3='@2@'&L283#M.6>P'<V5%05
MQRPAY,!"DBN>!:D-  " A)<::!0,AYNR0@>H"2X<_!)XI<V@T V^%HT&Z=X8
M4MX[G'/TX70/W^=.B[6G<?.Y4#DGY]?B]98[Q>E+G@_.,O]S<""<*41M_RW<
MP*GX#+_];8,'C>^N?A9HW G^+ D'!_P"LZV\)BT9X@T,G>_+]+US-<5.UNHZ
M2OG$EZ-;^B J\R_F2M+INA7HK.U'FX.PSP).&OE;J!MPC.7/PC789PRIUSIB
M3ZSZG_JO\QA^Y5UU.O><__P7T!R!<(-(+P?,?/Y;&%""^3M),@R[K!$@N'?/
MZ%_<#Q+"2NF< G=M,>^OQ?!Q/97!X G,8?>V]P+\ATS^$ PA#;"-VL/5%1BY
MLTV3"EU0"W5-4D>F0D7<F2L2CUV1B+^Y]62B-YKY<&]9K87&9[J!\X7 \]1?
M\(+6=0[W8[TV-*KP#@R5C#O%"D['0,<K,DT 4O7A-P??<1*T:K?9=2JEGLJH
M)Y@N]:AIQ*W>/I$T&CCKP$N9S9JOU!VKPZO9%.JL:%*L%0I@YYD9$/YX0<^,
M5O=1\33BT=,W\-@U$+W>&L4LO55C:P@?\0$4$_G<9_^/Z4?BYT_4DJ6#*5OT
MMI_9?Z$-9GP;Y'/> 0+L$2>0-YR%Z=BX]&Z/FN7LWRVP+(6.C>-DJ?5ML0%1
MDV_PHQ M1)])_:+I0RJQ,K;&_@9+^@4H:6O<@W?+2R73M/L#_[MM;EVB82]+
M-CH? #Q8W+;D6)BPD@JPJ502HBW^"F9T%E,LJ6V+:A9OS^6> K^B$&8 JA9Q
MC5*5&=J$XH.%#\ _XKM>]!V(6'C6I#Z*H/0Q!M$66B-F)\?3!^Q_. ]HS,M
M3WCO2+?A3]0G\#6<HVF8A^7Q:E?1=%7O\E<!+W'V 1QF.=LX'YG@3*EMY],,
M_U3V?^C\=!CU(>.>\*<XLCC\&7AABJP, -3P-RVB(M;"0!"0&OV(G\OTHL?V
M/N=#@32,FV'),MY!X\81$R9^RWPZ4P&Y CXLIPM5E@(&K'3#X3'J*%$NR^C4
M665=%0ES3!&7Z!W)!@&9)8\<<9(%]\7B;I$%GE=?8;XL.DPX_@P$C@SK,#<;
MN9?!TPQ65KMGFP;O*'R9CWS+S=-CY[@+.*Q6ZP+HMX1R+#B>")Y#),)_F'4^
ML4T?GOAG (3S(8(-C]\16=/9O.DO;%JUB;TE#[. +ID,K,R0^GYL>!,-)<+!
MH/D5)MO.$#Q2-CO.F_W4]FP:QF=XZ,"(I8B 99Y! %#1B#*78L;6)+M-T8?>
M'_C.["\W02#CN8=^>0/H<T((0 )$"$)KZ0Z%V@*<7,*V0&4[S6M _? ^)_1N
MN<$!YE,#_+)7A0SWQM+&!MGCR4?Q;2@H1-KT%/5  H(V-%\45?4-J.<^-/S;
M(EWF:*"4A4/>UH=,<1LR5JV!6L9@%A,D (?=04V-&8Q9E 9,G+KA/+ T.DP2
M2RJ<; OO[P^%AFTPN"P%XT1O%L[*I2','DUH\J4:@=M[\!O'5UHC#HQ);:<A
M4546NR).0!'5MFJ#9K3[6>%5T48J@X')8ME-8#O,X/O;A :W.%;0: %T= EK
MKTNDOF "^Z+@QE88-)YE4-F-EQ(@OHE!11232R93W"RB-1G]Q*"AVAXJJ$>Z
M8+V"GB0$30+_U2W?-N_! 0"H.$O3'R"E$&$4$NQ!E*82T!R$+UI[BJ;IKSP(
M"="U% WV144N+/NJT!<XA&>7)J3MOC%#?XB(Q)^ 3A8<A%/@P XQ6698?T L
MA>I?FI&(T5!NEV+1"ZSXOR(LKUL.4X%5WB*N^ZLJ+#.K3H-UDONYF,L)?=VT
M,J!^85&S8X/D[\.F#V1I(+ T,H7G1^9S^2(C:AM--7U !_NJH&_XD'8WK D@
M$+#5:#211J4-- :-%\+-+X3O7J-ZB/IUN)F>(O<RZ)## V!&=!$5[!FZTR'J
M%B#>"[ZTK^/D0ZH+?;]FIZ(CM7"'U.J@-.,_#;P/(<34?#3HSNEC5U)7&@/E
M$+X,ALX8/>'-W'S"/R6NHG'/N"Y[HP5@F5Z85W;B_QJ8&BKR@\0.';OL USQ
MW3K:TT4G?N/$JZEQQ(PGM)4X*^+5 9*B!UI8A5_K&+[&\*[";(HL&@*# <+&
M0FMX7A4#-3'U!^AAHC91%M8P!XJ%-WI(TCX8X0H7=Q,'RUL_@T8Q"@M@?72B
M6%[C 2 ,>1I\0XT8W%'B?A!G=&>3-*0/O,6B\100_!4RORMJ J>1F2U#;.)!
MM^5>O:*3P8PG*N"< [JW.+9D&R@F,SJ032CFA!$(*>K;>1J17EQ$J#6J[K@J
M08>5]%OJB)Y$*CTE'*9,A9QS[) M7C%? 'B2+>$P$#MW.KJ>=#ZO<^# L 4H
M@$=-J4. X>A365[-3XW;OGX@@9<&B)*=;Q$N5:)]:.!)^B%;'W6+IY_ @E;,
MGO,+'R^#[ #=3$=! R"N8G//%CW8'567:*HQ*':0J_!:<&+H)?P0CC]*#D<-
MMW4=3S?X-&U#4M2@8D9# A!B4*!;$M[,@]<-I*7'F;67,D 7@RQV9!T>:K[3
M(?'9%L1'#%B,JG9O5XX'C*:&HB*\\ W\_Y:$P U4)MP]0Z '"FU(XQ<\?0"C
M QG8*' FX Q1P*V>@'6S/]1;L@T</MR7GG4#Y317[P$6]S%.FUU-E@]%-['>
M!!%/YPSKH-6IAWF@=PZ ,PXPW3Y <JI'5?*&BQQ)!IPO<(?!&,NZ6C5#@PK,
MQH)-$,D<8>H[6F[ R]<X#1E^3%"/,ENQ"29?SS&!^&4]R(U6BT@LXH^?W$B4
M+]G1=K>& :(6M3<TJME,[S8X@_83M;X5=+=?_4>:V6(FO>#'@$B6ZWS<'YI>
M7W2]#6\T7H03O-(7/A[!6KKV*2N4<Z+P@%9-OO8/F-C_6CW@'?@O&##"1Z37
M3]UX^72(VQS"VI*6.39L-.@OP8@1[FB0"K9])'R\4H#6L"*\1J+92@+]1'A
MNYA9"=Z/?BB24*JP-WNOR0H-C91+8"3!ACX>2WTPL<!<A\_KI]R4; AW.MAH
MF8]?=$U7;=6&+YL22 0XTB#KZ9?"QR:@\<S "(,IZY^88&@@O#SM2;BR30*2
MAL/#B(!VT NOD^#!)VZJ8F 1K#-N&J -X0BBC&O^]R33L9#19D'C5,;D?WQ"
M<PNAP&@"?L'\*!HOD@W=-*/,5$(;\\DLTJ@S3XK[$%BPKNI=)NRPK8NJ9@R,
MZ=I$Z!KZT.KMI=B6; .X*L,\19O9VIYS);5?P4/$NUKP1>"P$P.L:<VCMZH/
M#VB92U!8H40#OTP#L>9X\^K(]>?Q<9Z! =X6L"Q/3<'BH0&X F!5LU0/QO"^
MQ^ -W$[V^Q-\-I/G[W._E7FH_@P.>.A,!6G=EOY_>U?6W#:2I-_Q*Q .>]>.
M@-@$>$AR3SM"MF6W9FQ)+=G=,_/2 9(0B6T08./0X5^_>505"B HD3)/&4^6
M)1+(JLK*\\M,*2CQ%MRP!ZL#>'!-AK;X$!LQC$JK++^6+_ -QRPQ9FQ23/ :
MI8<2?1HU9+%/I%6O_H!'H'D$#>,/@1O"E "U[B-LCZM6"DLA,3_PA^C!^-_$
MG_C:%IY-+_7'N'A/(A0G66I1L "6XF&@F78/CDQ A"P*:H \P# !';:'?I:?
M?Y9W&H.B.:SHC+F#HAVS^0,6!A]**.\2L6E:X=R3(105?$8#?,9 [$L>5Y"Q
MAVO/8ODG?2@9;2HZ:$*=@>Z+AAX99,0*:B]2&>OU*10C72J5 AO!IZ)86&WL
MJB*7THOX4IM1/'1#M)I)Y)5\00WW5'0=DRC(^+@$F\;36_"C8TI74!X_!T[I
ML,8I+1.G=%CCE+;B,FTJ*T!B%%1O&D<4=\8ZW[ZG@K9"5ZO )\4)8T_4 Z/4
M3+(>1H;)D2<=Q:%ZE)32VDRP@G<L?'\R2ED["<,97F;(%XW(=_?A?1CWZWE>
M*)/L ZDMX6L)1B HT:[+=H:YFE=93)ID NH@%<F+$!SXU*7L^03D :Y/87]%
M*'P233)**6*BQ%58TX*]307*HA*;5IC@"[SAG4D  Q[-9[(C4&UVB6!L'BRG
M= 7E-3UAA?":#*&O:$GDW;E8W\[Z2N2O^>Q0?PMG@E0716JC@&Q^)I(S(OT1
M>DORXQ3<$3LU*]\#7S:4G4B6%<)\P89@?8G1%(QW*<TH<2-H4B4B[EZQA\=N
M3/49A051 -SNTFO@AWV,)9O'EW\0CN3CY_]QQY.?SS$(C/@#,"\P!#?R HSY
M@W4'XLE/.*7\M7'9F+9%"ZF38KB7[9AQ1-@/%*P<R>/R$ZYH=WY6;K*![T#
M1<P%[B"&A77YNS^(_<@\0N\KLL2&P'Y%-Z'(1]"*/GL8X[:4?T]A?VTK]$(7
MC#8RX(^K78$X."5*$!B7=V @C>%!GSZ]$T1R]H7K_IF9JD[6HO7WR:Z4M@QF
MZ?LCJW!%=UZZ/1$A?18:1R 2 [-%19\=BQT<#$:EC/]Z@'T4T,I3?Y%N OIQ
M5=QEZMQEB:P:<K^RAC&_.B-8#C]](YR2LJ&%'*!X%Q7WX26U6(@IR$;104&P
M"25G,$0%^F7H]P(1NC4T=45!%<FREF!^PO!)42!56C6S%V1C[E75S+\ER\#X
MKG3F!R)'02$"!0D8430KFZ@4LK)AA&=.V3ZT3*[ _H\PC.)R!EB! ,K:G'+"
MJ.:Q%,?%\AE&3[A"\X ?ZI$M48P?Z,93,;N+J7T,=2"XFPT=KD>BF(*;A?T1
MI:[U%*?(.LA<$5M>X'2K_*_%VAAU(.K^&71,9YKS(J344\D6>&'1EB+Z9*8Y
ME65'PIDW2H%V#%YDDT"B# BPR5$(+F/"T(064X -'/I8V27V7(:]5+2'4 P8
MM!!K))M%1"@4Z<)XD7:26"N;(/7UW9)E2 >#L"D<=\&:.6)H9)5_^'C#S7,*
M4P%7_<8,AA6C()^#&_<.846,>LUBP8EDV/B);#_$WH!D.*QR1$!.0ND>O*!8
M6&>X9#?*BYZ7G^7ICR3"7"ZJD&L?E,N8M"'\%Z1/-!;CYX=H4X>$_L4$K\LJ
MB6UQ<0^!6H_JG1,%L,;P?NIQ>,F0MC(0_9<GNB;19<..1AC23=&GPI0T:68?
M,P 43TN*H:MA$/409%!<O91@"M&1R- A?S/%W@%P2<*!RPLT)IC#BI/7>)G'
M4<I15=-+1V0V"N#%!.-Q%"!A44R9;>%S2>P);-1>*2RI Y&HG!/D[0V+,TI5
MY#O=,#3'BN":VDJ$IW0-Y@203(ZA.QA1OAS.]^LIF"RT%U06"(=\#F_H^R"/
MX"D^GA7Z$X(@[(*19'Z:0X%49#8ODG13W-.QT QDN<AMACUXKP%'/D:(5_F_
MB+Q1QO#8IJNWX1K<A7!WOGD6><'A$)[&'@DQ"K*Q2/&C_2.*A%"^#N&@0LQ"
M@7K#C)& " N4"S!+#]U:+Z-DHG)#P=XC%D)<.!5*<GP^%)Q+-#-TJM,$9U9)
M?P%H("6'4AA-*$/G/03P^C&I0W$EQ!&/A?<J,Z2Q!PM,,')\@VA[;57L\>!=
MH/\)FBF]Y8^YWQC'Q8F;%"=91NQEB2=8$=Z&< 9I&)H4B<-]'F-9@2L U_3J
M/8[N7NL1_UHQ;+)"3@]D#C!]2H?RFM-: =RA9V\NCB^_?OIR:9Q],,_.CR^.
MOIR<G5X^I>Y."P6:YU_6?"'I9W/-;IXY+KRP*<6)S56=CX$$7#EW/YSQS>(9
M<%@;K7Y44WKOT\5(6">MEZ4NK0M2.N] [14>RD,)DSDW0G:FVL!1;78%&SM"
M9]D;@+V!UG9\JZ"^L]/4_UA[/^^U>=SH1J'U6MT756E543\/AN8%YZB2,O'B
M^\Z+>Z=Z2=U:^9*I!O_RTT[IXZ+9OW/8L9Q#>]:W*M]1S0Z;(+[3L3KM*0[>
M#>([./6QV=I-XMO[^]9!J_UHXK_G'I9'E[T3#9<31%JN> SM2_L [DMG_^$1
M$Z]63DG;MAQ[ZN9N@)(6",1V:TH4;X 2I]NQ#O>GV'(F):M5!P^H,:;D(\'U
M"+&;/E+#+O*Z.55YY:6W[:;5G+[TRWSOIA<((GF:D9_. IUFQSKH'CSA!=HV
M++#YW0M<HGZ:+81R@Q +PL)D]=IKOV6U#Z=V9P."NM.R[*W0&+8#5_Y@R@K;
M "4X#*$YOV&Q6M55P:R$VHH4R_HA(L]6O"E[JYV&-C<=<U@4:Z%C:_;#<@[F
M$",KEJAS2?6S&1R[I0JLU06/]@F;6%UP6II/>'T'MM4^>,(6I.TTK4YK2E^N
MU<!ZC/HZC<*]LO)B?( PO2PS]-(5B\WN],W>D #O'$PY 1NBQ+8ZS055R0II
MZ4[+IBUP%'@ GCFF 7/FRR!*DE?K,<!>.JTMB# =MITMX1#P%PXWOQ\.F%]3
M4>_MDK<?HABT02@Z@/;O"O4-YM#UPU4[NQW+L>?PZ];"-@?M.1R[M5#2!;][
M6\1MJ[6@$EJ+L#V1Y37';!F(9E]77AQ3H1,G&T2/R'"X:H'3LCK.-D1L;*O5
MV08ZT#_:AG"-8W4/YE>-ZQ:_)VS@INXMUY(CC'/E'-*VFH=;$=,[L.SV'*)E
M]3S2L0X/MR%7V.I8!\WY=V13L9I3+]V-*(W3MCJ=)^SEM^$J3P?%G\[Z.EVK
M/8T;>3KK.^A:SOZ4S_3H((UHQ;";X.<M)_D?O3=40Q+[211B$<;?:KH$-HF,
M!@+B6QS"*DK6$?_V!/#I6T[R0K4$"MKW=,H'=K!B165]9/>Y1+:\@YOTO'78
MV)?M&"T<66!W&MT7%H_E> XV=J-C#K@D7%2@XHVLN(<=;"(%WSCL-%KY Z>_
M:E1<X89YR07EBD+M>PG6.PW4FT$LT*VG!M"#F I9>W>B0XJ9C+"&BF(J7%].
MSZ5F%SQ#1,R$,*@"^6OC4O:AQHH]:BE=L4?M5N.PN$<'#?L%];#E+A_XDUC^
M0;?AR,]R;VN>BG&%6Y:_C&<!\AN,&S?15B)JZ_.Z6FJ\]O7ROD[G_-R&0M/R
M\?'T"/4EL44QSLB 4]Y_@4MY[CB- TFP45X2M9 M='/S;KT^3NB099 QCYXH
M=0*@E>==LZ=)982BMLE 4)L)LKN-0T,V"+TKTA-[5P'V'X$W5ARXCQ5Y-WD?
M/3GDAGKL):DYR8)@3TQSD0,1;[ >$$OOPC#*N"\_[,9@#_M!!IY!'>5$";4D
MEBKX_LYH\(6?)%@8[UXA:WYV[\I'\ EOGFPQJGJ.Y%U&070J+LO[HA*3M6S<
M$5RWH7:@KI_;<IU'$$9#0AAKO;=!3M./8AY] K+NN6TW&\W\%KKJ?N+'X(:V
MBC>T<: TI6UK?YU^G5%\78=']PPUP*OLEZA]-9TJPRNJ38N(;NTW6B\L[FPE
M:K+;;93N#Q)A::V^<OU#<R>PZ>@DXS:@6/-,U?FI[#"AM<Q5S<#E% JMZ[AX
M$HAZE^KIJ>L$57A'H;>7^CC'F%NLLY@=\RQT6-50D[9(!A:.B[YA6M-3;HK1
M\V#;Y-PXMB:F"JM'[D U6?.P+6??#0R5CREK/9_JV&69/'TX3][PCF!;*['E
M5%#:@]W@46V@"\"TH)+L*.2.K31[@NP5:FI"/<FBJRLL%N_=&:I,&G>0MG2
M-X1'+:GZ[GPZS#3_!MC2AQ9!_:/N-&B:ZI@*!(OCD!9.K4NV7)<<*R1LK4>V
MPG^2^!C=-W":9:5P0.*8M4*GI36[1_]@O]5HJU]<B4EZXBI7R?B.C&YTK4+S
MO8;Q1?,@Q-!$ZN@K!3H1\ 5^!D%#4XG&-/6%F[)06R+LSL5M2O+.O2Y0B5W(
MQ%))[8&WLS^W9NM:6D]U\?UFHZN^C]Z3<]APIMTG'@0IWL^$%\@XT+9R#OU:
MU 'YB>%8G2@,O4!T.,H%H])3[#0H;9%W\3CWDJ@6FULN-D\Q=C@'O*T6JAOD
MP?=T@8UYK%P5WQ43.L0X+9[_@!,HP8P*JR"-*#1TT2-#*2*6C+,RM&\9XEM^
MPGUT?&KV=*6W&*6_DYA*1B!+]S"T(]K;D[56,'Z+)"G5(>=F@A"6S2#[(Q [
MHB])%*J^J4G#*(+=F "+6NU( 8\&*K8_2DT<%HPMNLA O\1N/.;'J(?/UV(,
M=AZ<XD"6TVYT0%MQ_(*WE$Q0,Z#.^;2#CE$A=F<' KM%7X2U07X>*I*6G^!\
M\<6ZW?O#W=F=9MV=?8G=V9UFW9U]*WA_JPP,@><TJO"<6NH!)6CMO.V.G3'#
MO'!G&Q>=7)M.A<BN[@/]&@4%^9 %<U#E]CRPFC5HR]I-^2XI(K&UTNY\*4S$
M5^2>/(BTK:7*!EE3G9TW%RY:BS[T[LSG3MD([S8ID8#QH5:C,RL\5"VSW,1P
M1?@'WRE"&6*P'_QBX/72W%6X]$*< IIX?9K'"%0-_%0.%;M3 RE@60%/^""&
MQ8$%.%<+WP-/Z=>QXQV0+BA4C"_N;6V";+X'MS(F_!R+7HBP:KE_DB48<ZV,
M=CYLQ.31DD*\&%-3!F,>,->D$4+=W(&*5K?1>:&$SL,ORD/- I7! S(Y>::/
MP9"FD!X^STA2JC;)9'.I"0)YP!6'&_D#G\.RU.<;T1YAA./#L?4]-6^^HGGH
M.<@_BR=14LNHC=S9HZ(ZHI$ </S#"!CXGOB=C*W-S7QX:YRV%MS3+6IXHJ%9
MT&W]=LWYBA\^VK1^L&_BW^[1>3Q-L"^L5Y[2<BE_HO#>';P>&T#RZHG04B/L
MTL4A?%.G7< PZ4+S>7M_OSK4,//!!ML9Y7QOMZLY,>C?M!J'X-X4\[WW0GZO
M_#C!\7K!U2RXKP#)2E2O(4?M*$#O?7C>[D&N."3F>0:>M^-H"7O&]ZBU%F&[
M['D9E%6O -T*,BPSF\!3"R@S)& ?MFB*@+G1MW+4.&R6G'/>,"XTT&W5+MC=
M?&5$! (7IFA@74XCBRGQQ?L^\,8T0R/"O%<VIO$4"*@6^&93C70.2?,;^6AK
MQA;P?$+K>^&YYB+P7./[X+E."9Y;@6&H+<XM]XIK=.[6<-HL=&Z5Z$?-Y30[
M>A%&"9G;+<E31T/F.K:M)9TK7V4L@LJ]7\\J3.[!-":W5<3DNN"?L*FK +G&
M!@"Y9@4@U]@$(-><!N0:&P#DFF5 KO%X0&ZM$;9<(]08VZW@L@<PM@>Y8\(8
MVR;8ZU*^'W8T>"K:[ AJF@;9WBNV.U:.LS6FXJ8/XVS3Q7&V&/;28\".YA,8
M]RK$AC8UT45,5Q%2A?,6V1/PKOTH2[!ZVO4'@C!%ZE6$4SWE6_SP&DY\X(JQ
MKH:,W<I/XY<3E0_";U .+'3%]-)C,*&')(Z/Y<!&&BJ9F$=@Q;_$T*[3_/GD
M^/C\B'ZV?WXU[3CNYSL IVQTL+YF89@P>)O-^[7]+(SP-%K/R)EPP Z8T*!%
M$'%2]I)J0/&VR\T:4/S$-(@&]'D@$/8]<&);BVQQGDZ/)!4+-"K;K*X=76S,
M1!>;2T$76\4823&B9#>YF0#'7W1X,>ZR!C&NKNQXP-&:C3)VM%+,$LKX80ZI
MH5/;+I!K .;NL.+<<GEQ^&57!TVL#GY97=6=KZ46)%MU;VH,YG:<Z79C,*<Z
M^B!(1& PNQ48S =DET%3X=<.P]SY0WSR\J5&87X7I\V!G72TW _[9*W.@CB&
M[T9.VCIR\J'7+ TW:0ACZ7^7B)B<O*G%R X!)1_B-:I2TG >99BD>)Y!_16Z
MFJD[7]2\!DEND;+YY/^=P<U/[VI-LU%A!#<;KM-TS/&]U_?&/0\;^\F<DTJ$
M]]UD1!^B'SPXR&LWH'QSSPU<+#F&1[J321S=@O)(02W!?=4K SD8V=3*Z\MY
MK*D4/+O&*3QJY()>*SW=.="TZK7K!Q1!9#LTH:92@8E\1Q$\-F!K=W=+E@%6
MDQNF?M^?H(%"1H"N4&[@6 NH0IF6S)$/R(97070C7!85&!%X2[8MXB@;CJ*,
M'QY[&#@>,/X!?T'9.H/SGC<("@E\8!OLQ*,:@^*[T1T2G C\)"28( 1],QK9
M,, <&@(O3#"8;OT>NTGP[<2+KQ'[1UC#'FRRRT-U!'%$2 A[;:0W7G M\?XU
MHSZRNX1==Y=89G<)N^XNL16\OU5FW#L.\B!\NQ3DJ<VY.40M^.*'R^4WT*:4
M/( K-C:'@9L(/(?$61+0!P-^)II;_A5(%E)N;MS'^2_]-$-;*?]B'^B.QGMC
M=^#I8,WHRL>.V*PP8S0!8W2_AB$],<08M4H%HQ)-4M#8>]'5'NBX/1>!/5Y_
M%$9!- 1C[_W\%:-:V.,& ?P#3T\Z:]$*;)^5^0$*:,L8N["X$)%&!(0 :B?X
M>0F)Y, G9W<[CH;/(CNUZ^C1UP?,5+=/6P%?.RS;N_N-?=6:BDL?P%!!ZP%,
MYK1$F(B@<J1U"4&A$VV/<-.F(5O:DPM%+"+!+E/UP*6B2L+LQ1%Z QFP![.0
M[*H.#*: 4MX5\(./.2W"Q8)Y!$Z$YP[ZN.,&DJL^VG=1?\*&Y#A?56IK'S1_
M3I3E)9K-,_.-7 02##*LMO!N00(EZDE5;H1F2,*Q@V;]YAE)?P0/"! HY][Q
M)M%R&)%68#!];8I@.CNUT+7;:\L7(D]&&(Y 2AFZ-P$'24ZCB#9*CH*'98BT
MYEN1>Q#JB)G+7&24LN]I-UIF3]SKE\R3@\A+*(KI]HG1,4#%Z#SD(I"O?@@"
M$2S!E#$?5.2C7O;*]!ELV6>&N_)#/QDI-P6!ZZ[,V6#'Y #;@O:5BUS@UY['
MN6%>$5Z$AE&\%(7=D2\=>1I(4#$\#:-($5"/UT#<YISQ=2?+QSLD7TIZ(O#X
MFO(T!+!)?3 ;;MPD]:S\#THTT)WB5]")D L//CS\W4SQT.M;MJDR:'"VC0_*
MVSY3AVP)+4.>-YS>!Y7,/%)^^),P"Q?R .=?UGR^XK.YYOOE8_QF3",3E"O?
MUM87JP\^ R)P[;\\ZY:=VIEN\[3[^6RY>1KUT&7R]67)M"JQJKG]*Y"V8(GR
M18]^[B&2#S(9$5D<6[<XWSES\UW%ZZKV'&W;.?:DXGD+C/;;CG5.#;I\S#I7
M.P%7B+8N1L&F@UJH;$Q2-B*R2MED57]3T"S%E8KG.B_NG><H!6OERY_/>*;=
M+7U<S&ZT;<NVIUCKWE=4\],&:.^VK?WNU)3HN6E?RWSOG!FRA.L9<X-CFA%6
M-9&W8UO-YC8,2VX?6%UG_AG%ZQYD77UU7XJC>S7#/%SIEME ??MPL<GU*YVZ
M?>BT-SG:>?I=Q]S' N?_W?9';CCT"#9$\9"96=]5GYK5Z<PQ-WXMAV9;!],2
M?G6B<?:]X^OU5J3;]\RW>A7[.97IKWHKFDWKL&EOR\&TVM;!P=3@Y+5IK?)Y
M'(>#[SV)*15>L>R#)C#D'#+D>\Y@'CKLUCXPPQS*J!Y2O5Z2'U-H6 F@T(K!
M2^%/N]P-M-O6"^"GYT!A2L'D="'>$3W:"G=HD=XEQ2Y;:4Q)*@ZY)AC+1[YJ
MF%\J?T_)!_AEG'EY;:RVS.<M^\%BFDJJM*I&$:3-0BIIU\!1X@\IJ%@C2S)$
MR;LW*BR*$%?0OD@/-]6"#4?L/55E1^ ,PA.H3I\W4<ONN0GU"*%MS6)1#P^+
M2 76!+Z/JQO>:?6(6(%D/'?L1\"0.S0YMX^UY7T!@!&4<[4HUF%&A.W->'SS
M@UCGJGG+4ZW%Y'80..<:]]3*(^*+[5"232; Q4"S']+@WP!#V<P<]^T>M1 +
MX;])RI.4VQJN.V<B;8V3&(LH*(#/;72X64, PH#WAZ!I> ,PS*XZ3&A7<('N
M>7@Q4L3Q2VZW1+8LDV.TG1(8[T K(YG[9&;D&RVM74/BN0GU7"#H-J?73)EP
M2\H9NM(5CKV^!U8FT(^MZ(!TXWE+KY:5+6WF+;VE8COL7=&N6NO4"5F:<'$5
M^PT,+_"NZ7@G+E]G.D2]CUXAO_-_4:^B7^!TPE6>$::(_, ,N/T"L43_KA^L
M(^>Q@]IR#?!$OC0=NURZT3XHSNOR\_S'(V[M[.S] E6IJ"Q0UQ1Q#)CL9F#"
MO; #JYSM1\SB5&[<^)[<N([U>*C'#:R%=UY'8$BLOT$+8MQE 4Y16%&-G=R2
M9:AHCZ[0W"")9%D1G#-WLJ/:0]3PGC=@2$ZW58+2Q%Z.T\ V%UI+)<7"Q#DI
M/EZ9)-A#5"DY0QH 9"[,;?!8F(*FE/3S0ZU_A  4X^\9NH./?NYT<H%Q.<+*
MIHN<FO,8FXR.:P[=3!K[[.IJ3[CKQN7(\U+S*(XQX#7FD-83R%-O.<FG4>CM
M%,$[N,<*RNL/?GDVF?S9;#K/)&.?I-[8:#7,WS(LOTA=*J5 \0J_".3_W_M)
M/X@2\+9 7/<0V?.96T1?^,E?]2W97,4,*!/OEKO<85V*P&3*_MUP.(7N2A3*
M)R#N5*N14J"? OS@R$14V2*>Q\U9:U6U)<LX5[T2+2S+]1F:IYIS\4&""QU@
M%>[093?"=#FW@S;.=+\)M*I='<!M8OM%85NC,4-F&?G/UV[L$P*J^,*&\6MT
M@Z5VNO>/#GR8Z@8;$ IV5!LX%DG"!I1YU*OBC7ZBL[G&WMSS1%1OB?;K"$@S
M"E29X+P,?6H!#YX\BS2Q:.&EQQG3);M8#+RD'_N]O%_N512E(;5G%QTR\^\3
MJ%UV.X-[<Q5D_31C-)PQ?2(W?")1*DH8"]LM"^JY5?[4 =5W;TN6(61ODO4D
MUEV7N:+OIB9OD6.NL0J-CK,H?'W^" EJK< 0;@O>! R("R%MY:U9!P@*C!O&
MI6CYQ$',O(N"&$NE@V^1WIXK(!-Y^^M0[PLK&TZ9O2S!.EDBK-BZNF$>%2+_
M3J/S0GI1?7A/1!U9O4$^OH'B&9T7IOI0(H8MJ' [J3'9K(*J-D3/"(W2T)QX
M2930'L1>[TX%9#&ZR+M H1$Z@')GK0K-5U1X&(4%(:/)G@HR@9>B,5S%M$P9
M=D3%!P89R W5AM8'J2!K8W"%<G-+)Y!1!_32PWH9]\ @E4N?IV-_3\>>8/,?
M_&N$>W'#@G_@W;)TU#YHJ+5EV.H'S@"S-A[NC%@EP[X+KV8^O/:DH/MZ*9XF
M))?H_^"'@DOE:(J9,ZJ,4G!*Z_N.78V:I4J;&3Q2_%8I^]0MI9H49!U[#6LM
MUPS5@%^TDO#<&-WU1-P,<N'QV_>MIQAL^]&CL7/5X#IU#>XR:W"=N@9W*WA_
M(Z;'I0_?<V.V^F>8ZBBX0&1YJ8O%CDDBQQL%8+)C'P*?6V# QQ*OV'T)U0HG
M+G&^1$GC*5606**6!Y[@Q\95%O9%3W7E4/I)2;F@^LZU=T%(<_O3*!;=3[FD
M!*ND7 PY4*X06XE4KX/U)^8"/$;;B/$DR21*BUJ>4JWE!9,1#G)E5+EAZG?Z
M&^_9%;$\8]HX,1]MG#3,#^R5C.&OE _A[DJ@VTI'C@U!*5%XM4BSV1G;K<P8
ME%I]41H61&Y(< 0R/;@MM#<"#9UW&6L +PN7S.<=,:H[?4D;-3<P](VMW'FL
M[/0&S'53YX7&A-W<M^R6-O0JR?HC*O*#RV*_@#>@%3[#_$$.Y48CN8WCYAV?
M=82+UN!MQC18S1*^E XBVJAGFD5.SUVS-5$[>/,U1-(!"49>"2GEIKJJ!6$R
M!N+,GC#U R$@T";71,0LWVX&)^D^E5$5=&  2?&F!P4.K_J6$)L#']PN*A<M
M^D,$MB$C&SP0%XLST1Y6GS80/)/<^WR)?D''0Z<IGTLD@0Y^DE\G%(CH6<R4
M+FBB5VR3,?/"T2?SIYSDDQ *7Y&834H"U;=P2Y8APBR4(9X1:Z&X8$9#,U6@
M^SI"9J-^2^)6<>B:K @! <-J::67X<\A=IXJ O $7@VKMO'2%JK#Q:T3(7*Z
M^SQ&4G$UC;OQN+-$WG9C !L7PVW'92%4#5%G=_V 9DP"K:#[,E3RA$K,V_-:
M8@$&&'HH7\0"0=>^4T%ZX3,3(.XJ((^ :BW@O5Z,( TY0ZSGW47*SP[3. HL
M;3B/,/Y,3X[$P3EAOBCMI<5P8S7:7@S\%':,459>*AIAP><BX<WC$!PJ+N.)
ME2@14 :R4!"? '%#[3[SWXCY/X,LE2-I6#0P0@RCJK O/!K".,,8&#A_N IQ
MWHIY.*[*&Z+96_W2[O4(LPC/$5/4=(:1U&FQ MP.&MHY$.,\HY!4Q2?8,OCS
M9S!/@(F.I62=!!2&*789 -DT]G%<'9J"/-4HY;%O_'(T\%%/B% P:8\"C](7
MB^LV$.F3@@B<T'698!>7?*E,JMP%U75,MC7#1B]>7*=YMF49( /[.$F6VDAD
M,4>\9 ,+O0NO2Q(-S$M*M@B>$_*OS.C 21S-(_<GDK$\9>&HN#$9 O0$>IY1
M<6GX0>1""4I4<@F93R)=<HZ54;XBTXJI9>()T4R*T/^:@*M'"#1^DQ10RO5E
M_8 F"U]FOKA2-'-.3*9:X -NWIRO<%=\2J E#&JK;\?CEC%=-'/#13.KQ#>T
MBOB&-BI*4G7,?><(+!L@G&$MX(6U;,)NXE*.E3^.MD2.,]GH>?W@QP(:!X0M
MMH[C5E]:S$3T>",[Z@*A^Z;=<O?L#IV2W1G@CT((7^*@"):AR@(ZXJI2^[#5
M9@]S3!D52QO1F&03[(^*H]:I_$+9133UEMK#:N@ 6([+8#W=AA46G##I>?X\
M.G\1(I!QQ 4G/<7?<_=5_-W*L0<87R4RM+EE,E%)^5&Q6)\'2P;2HDYX^F/^
MZ-SC=]671+R2%L<Q2QJ$*7OE@U_\6T;C>4'A7]#W&\;;W/9$4(0Z&>M[%XV4
MD\<RX)Y8M/[\.O:UZVA,U'7$U0R\*YKW ::!SA(OO5<:5^#_\D->B#>HC"6?
M99!'S0Q5@((A@Y@>'LDZ<^S3A24GF"("G0Z&$[KWJJ\P^$C W\Q+8IF\A#P\
MD^B1"8O!R$F"/R;9&!/FW_!GW _^?!Z^H+RAKR9E)[+)8AXOO#Q^IR(\,6T:
M(4> )/YIKG50;%-;B 'THHTXSF27/@9Q92&V=Q00L=5=FF+$B'P0! #13E N
MH4^W&O=TZ/),/25.<D[[T?.I:VG>Q;Z?0;TSA. 2^I;EU@=UNA=2;M6*=X.V
MW8<H-CC8P./:9XVBPZ"2BQ$>+S3#2/,!\7*7==1L%472!1\D?3:%&P2)9^ <
MEB072YBA^0LO. 7F2I^W%GOSCW[YEWK/"W3=A\YHU>B,9:(S6C4Z8RLNTQIZ
M[96B#FUUZ\Z/+KX8)R<-\^S+K\<7YLGIA[.+ST=?3LY.5ZM'E[_*W;1P2@?3
M*8:#[(;Y"6S0@.,*'@JG.K"P!I(_(#*?'"/$EOHXN5OO.^Q3(7$47+.?%- 1
MC3&1$6,JQT\$7 B_0T.Y$?S1!P.#NR9(S'+#I(;/FILC![DDN=]DY,_5IPIA
MF%T:,=*B$CDWL*=*_M?BI%%(FH/0VL(-Q,E0GHP"Z31O1ML&U7C"8G"*5CJ@
MBB;< 6B_1)5 8"$Z)JK$:RW-UE+1<GQC97S]1S?"UB&?6 P=-:B SOS F=E:
M!*V>Y"]XI0T&_0DO25TBE1*-<K">3)I/5+%5,5QTCEUD;,O$ S7M(QDY/ K#
M3'G/>!T_X" .N[GW+P4LQPXCHIM*Q90U1+K!SKF)**-*7N_4-N\@9Z#5X+_!
M^Y@8%SF6I% I<T;@@W?8EH;P7G^0@OC#$[UHO7_\Y-<S;]94N9_%AE*K4G/J
MA8XZY&,2H19%C U</H5L21$3A@')GI?>H# HG#75OH2^PI.A7JQ/=A.IZL)1
MZQ5M&#)7AHU(69%YIOA!V$5:_&H!=D .&&*H*I1=1HP"AZ")%2*FB4%.*!3N
MS-^]T/N6@?RPJKG(,L=1DE*1FX[2DM#*/@.3= I][ 25RO(H_$O_SJ N59Q!
MD>12.D"0H9(+[F",<T-2:=N9'\58'9'B*8*1Q#1W60A072YXV)6U?$;B!EKI
MUQ4H1J"86F?-5&Q1/Z_MJ]@<] ,&'BID,6<,/S?P)P&-%^H7#DQ63":&?F)]
M*9WUY(: R41YIZ!I!)DE6KW!#XD;RM\%_MA/!<,A+@V[T^QQN$KU0B+KG8!I
MA@#1)UJ! \'K\P,%\\$=QIXG)[/DE)]CY[F!@JV*+?\(E\R]CLQS+XVCG*D*
M'Y[:2.,]0I<'YI<X&T^LF57@)? +^@99J?I3EIRJNCTOK]"SA ]!6XBI)_P.
MCZKA2VG(%)1HB(865N@%-7QF6Y9Q%AI'($H"T]&R"$56,A%\EI&<0E"4'!7'
M9C)?&+Y:\ '.\%YR&TC3:3F2.;GYYO$MT(TR-D_V=AUR5@GF23.(<WQNDGHX
MU(A82-2B:/7[95!7S^N[8SU/C&^AI75%:86H_LGAGY3NMG  &*8_&5<ZPEB0
M9;C8#Y($AUBAK/K/@D"@P)*\H%N5RHQ%'EA!17FT64K_I>2_2=V%:%NXKR1C
MY!G21FE8!=B3T@IWA61[ON1<L+EJZIGVO.G!RW;S!8EI2:DB,)?_F##F86Y<
M&H"7?@]TS!"K8.2AJ-FX5)NL7"+O%K&F]:W>@(UW%*0C!/ :X,FBUG>:/V.%
M-Z(5W(!^8?\L>0,L@=3GZ^-2%5B:JQG"#F@ "V3"@> EPIIPDNZAH)A!G*JT
MH I8]3QU#[2F&AGR70.\Y3OF\ '.,8LFK!K[.4#UWDB77H9N\5#*5"@UB[$[
M8FR84FOP&6JL6(>ZUA^*[Q9#\4X#M$WL#<%$)>33)5F4P'/'?V=HE6A((3S*
MKQQ/%7'[.F*V!I+1^TJH;:'61%&T;[PCI8(#$:7(*+1+D,4W#&ZK[E3J)D\J
MR+534^'FS>^+5[2Z,@/_\-BIXL@#^2(UTFB!T5CBJY4SJQXQ56G.M=I.]82D
M+<_6@KS]$N%HT=.,_.[=&U\'<H2:I)9E^PZ0?BZD8WEHX#WSM"JY>EY6KF_3
MZL_T"&U'<-AVD!NIS.\<VX#O(/$81D Q4%^E)W.5:L6T<<6T@]L.SL$Y3VK9
M/=K/LU[@]X.[W:/\2,9\=X_T\\"E9E([2#G/ B@+F%KG[:[.TWJE[AX_BJY<
M5!NP>]0K?4UQZ=VC_[-[9_['P\CY[M$^RQ/> =*_RB+5W2-]]S6?^=)^M5+M
MMZ(QO"*'WG2ZCQNN.N^ VY\V.M_UR;Y]!=N_ECG=9Q,OE,UN1'GV->?[0V\8
MI=QC5$T17?TDZ,U/(&[O-Q8</[RR_=C;33I6)"'1FEF]?)SC@VO<^9J891+S
MXTG4'94@-1UKD:@$I*A%:DW,5HO4&;'%Q\G9>\*/]X8K'PHS+BM<.8^L^*Z0
M;;WP[5_XW NH5[]^K5D(6!51;))&)*6<M>:8E)#?\$M)J/CMPV)\^COW2W/X
M//G3]W_XGF<_ELKG\Q/(OO;:*5QT'_=V@,9#Q^JT]ZUN^_#1Q,K[(AH+&5O?
MW"='RNK(V#)R=N$5W .'G?\A%:VDJF7(0C0U&\YJZU4JV/.11*X<.TV!_F60
MO6KT>TBDG4;7HI"5@.L.U\F]C=R86KB^]V./^T2X63J*J#4H0]\E8!X^E$VP
MBNQYIZFF"*D)1.61+^,Q_)5 ][*^C:B0#W>IO ZA\SA]AAJ,<44Q%VA2WP+Q
M-K@'ZG5^F*\#I^\VS#/M-QU9H3MK99C*OO8&3$F8EX,*E/]TC4"!6B(F7WO#
M/ G-#UXOSK!33EYZR"^6[X+W<%W>A!-$..V#*PB)"GRFHS_S"\WRX(\.(CAH
M+#V*>@$VT/$*O8:P.VF?FH]B<9$?^N-LC*,R<">PWH[V'FM39,M:\5A+_ DD
MY9W9\XB,?,U4V53IRX"3\Q,6"6M^CS:3JU#2QT64$TKF81D@%R)2'V3LKPN,
MV>OLV5HW7=E"EX@YZFMU>%6*81>K*M8PHK)=-T%<9A/$=MT$<2MX?P,5?OO%
M"K].0[3-.<D[5==U>ZLG^3VU]##FF6%L81WO0&AZZF4A>G[G)WL[N/WSL-G\
MT_/Z@[T]U$.HANRC.#X:1!/0<!\"=_CGH/?ASSX^L=ENVG_^23]U6\T_OYV=
M?9@,_O[/L7/K@/@+W"3A1TY&8?KGQ<?@VW^<V^M^Z_>[_UX>I2?'0=9W@K_^
M^^^3X>^__G/TWX]!]M^[MV_[X3]'O?$@Z/WQ>S;X]?/1LS=E^KJ"OM,H7)C$
M;OCMYN/XT'<^NTLET;]]'4;A*4[AXFE:>.X7WM4OS[ =(KY_K]G>:]K\4W>O
M!0J!+\HOS_S;]'4OB@+/#:_<(/&>T5JQ75RS:7=M^&0(@O>79[#HUS,6O%H*
M;)V"V;O^[(W+__G'3P5BWDS_7]PP^@=9L7S$AQ4L^"4>A^D#QWO:^_W?WO P
M=?_=WP 'SD/AWQ_/!E_=X%^37P]VA0&=60R8KW>U!+3NX3^=!K!JQ&#9!3D0
M?867_BO96D$WP+&#$+7@B*FG!\U3$ T7C.)8#&H.V&X>O'1?H7-QX0TS,0WS
M<N]?//"-NQ1%9@*_3Z[N>-(>2&%2F-<>/LT+D_*P*T4.^8[VS_;+_BN\-"_]
MG&0<"HR?,QXFVUR [+IUPMH-JX.B8=5M@.<W\GM^^C3Z(*P^('A/'?V*8X4E
MY[%7=AX?$:;;7W(L4?"2"'<UEAQ4M-<=^%S>CJ_:3O>2?NQ/V"VJB-ML/'Z]
MG0'K[:1JW8+SR3)*RV[8-9L\WGAP3?#YP<+V;EOVGMT8I>-G;][A8<O^?=1C
M<N1[5V!$R%%?9\+MGV1QDKDAC6&5S?Q:3=7,[]*->V[H)7MGMX%W)WOY.<VF
M UK#??/TF;.68K44FU>*.36;+$F*.?=*L7QD72W%:BE62[%E2K%:ABU'AMTO
MP:;LL*12A!TVN[4(JT58+<(66:?=K+W)[YC;IOKY(X4)MH7G%LTTV@ E47E0
MN3[RZ#<42E^\?A@-,:EE_AH%-''// G[#34\XM[1MIP-2CDM\>^W%Y]>$R68
MF'D783-PA%[!3Q3;([S56S>@GM27(\_#CNF4$9GQV<M\04#IF1HP0M^:XVM$
M"XEQV5D>_A;U_QK!0D&*"UR?Z&B,#[U^^)GT/#<9F1^P+R[5R+R$KYU&V"T>
MM,'7T,T&U*5?/8G(*#PMMXGS)=*<[EX Y'&;;^ <T:4>YVZX?E"-'GM2TJ!6
M&[7:F%=M-$Y.+VM.>32I)V'@AXQ,1;D-,A_4!PKF]U$_0X'T])FHEC:UM)E;
MVER^^[7FE*5)FR_N+<X*NP/?6DQW,R_[(V_LUN+GR5!5BY\EBI]W1Y]J3EFE
M^'GG!GV)HOODAW_AB,5:&#T9JFIAM$1A]/[X0\TIJQ1&[Q'KZ]>RJ.:P6A8]
M((L^';VM.665LNB3V_."6@S5S%6+H7O$T/G%<<TIJQ1#.%8=Q$[MH-4\5DNC
M^Z51N^:21Y/Z#F=2$W74A^($VVZ(\=OOW=0U/_B!9[[$QCP#A$-@\Q?19H=E
M&,NO@1!+KRK9;4D-7[:[#'.NWBZ=NK?+,GN[=.K>+EO!^VL8S%*J0#Y4%<B7
M)Q]/C[Y\O3B^7&WM\?)7M:92</%+'\%9Z2IZ_YV$AMOO@U@A. 6U!T/]$'O4
MU4S!V?0&88@0ML2GAGZ"#<A2L^]FU#)NY"?8R0S!>VED]CPS@>7 '[!Q'#RJ
MYXW<X,KL<6L":C[&'["PQ4SL92%\:Y %=UH+O!7V"%@/7SSEDO0ML]!@U?C;
M7YXY"V_H,BG\<OSN].SCIZ/+2Z+LU[-/[T]./UZ:)Z?OMA08J=BI0PI]*ZUI
M06%KVPEL[Z^8PNUAF^T\B652]?;N]3H:1"S5XO+?_)3\1)3^,TH\\W,#W$&<
M?^#7Q3PU51I5R!U$A^*0FCMJJE1T">L)B9"IFL*:46JJM"[LY[$?]OV)J.SR
M%+>(!J#5@<6:76JJ:IZH[=F%[-E+-TQ]=QB9'_W8#091;=/65!6IDAQ"M"@N
MJ3FDIFK:KIWJ]E,S2DW53+OV2G$+5KICUB0#41,.:S.WINH'-G/?NZG'C32.
MLF&6I&;7$@.%M_T\MI.J92-O=K K^E*=AP)=]^%[NC^;9]1 .7EM?G*!D6N,
MS_=B?+J/Q/AL/0QG6[F]XBX"?3_UHL$=")*?1NDX>//_4$L#!!0    ( -&C
M!EV$GRI=M!(  #G3   1    =&=L<RTR,#(V,#8S,"YX<V3M7>F3VS:6_[Y5
M^S]@>ZMVDBJW^W#<B3OV3*D/>;NFKVTI=C)?IB 2DC F 04 6ZW\]?, 'N)-
M4(>7*3-52=3$P[M^#R#PB./]WUY\#ST3(2EG'PY.7A\?(,(<[E(V^W#PR^AP
M,+J\N3E ?_OK?_X'@G_>_]?A(1I2XKGGZ(H[AS=LRG]&]]@GY^@C841@Q<7/
MZ!/V OV$#ZE'!+KD_L(CBD!!*.D<G;U^B]'AH07;3X2Y7/SR=).PG2NUD.='
M1\OE\C7CSWC)Q1?YVN&^'<.1PBJ0";?CE^/H'[OJ=U0Z2>5W9W<+^>/+$_UU
M1MA/P15F2_D9D\>SR>.[/][^XR=,OLR?/U^<3C[Y?_]CM5RL3C\]'X_>3.35
M\//R-WX5BGPOG3GQ,0(LF/QPH.V+S%N^><W%[.CT^/CDZ->[VY&A.P@)SU\\
MRKZ4D9^\>_?NR)3&I 7*EXGP8M9OCG3Q!$N2<(926D-/F528.1EZ5R45TL1O
MC\+"#"DM)3T+26E,ZI(<G23.ZQE_/H("H#\]BPD#>3C#>)$03[&<&*910898
M"E4DA(=YHD.U6A!92AH692H0QRW7%0HRA*X2.<X9]T+QD2[6=7XX/#XY?',2
MUQQ_O!TEE11Q&)]Y6)K -Q*.S][HUNL1GS UY,*_(E,<>&#M[P'VZ)02]P I
M+&9$Z4B6"^R01GYQ@\",<6@WT':C)_K98D&A820/X)$.I'/!/3(&&Y#^ 0VW
M2H@N/KKDT/L<( KN"W^FV,4,73*EC!KA45,]08>Z80;:5/AI:KX_RA,7.062
MN _LK^;W0A )U8U1M_ @JA^1U-=UL.<$WD95U_K5U8R>QZ[<SL<7V-.M=30G
M1,G0U]E'5CX_!4?KOI,D3F<N8:"X_B6Y1UTH<U'$&86LT7>_,!RX%$J^[P&R
M N@1"[!Z3A0%(TK0RI9;0?=F6^C0=QFI/9254"9NE@_3AX4>$(%T.6#N SA/
MZ)&0('/P/7TF-S#0\DF(</MJ5L#_8 ?\6CKB4[26CS!SD=$ 951 H0Y]XVX;
M$9=8SH<>7\HBZNLB*V3?;H*LEH&,D!ZZMM"-YM #SKGGPA3F^O> JE41PQ(:
M*S#/-@$S+>PO*!37P[H]K"7OWS85K #_<1^ ]R]IVP (4Q41N/$?]<#!E/KX
M1(^CKF#^[W$9" )_1'5[3U>/;"6%1O.8,A@&-:/ ][%806.B,P8S4P<S-7 <
M'C!%V>P1XM^A))FI;,'! M,?\I@:@;J]I46:D5 DU+3%M5BTEHMBP7U 5 7$
MP(%^2QJ9$<"9)Q: O<T#EF;0.[[*\3?L&0SE J+SGJC0];EG%LX_RSL_Q>(5
M8D3U %0!\$3 4P&18X%=$O49\HDXA#[CB4?@Q:\$=M1 2IA\0Q<7/[BE>$(]
MT#7N$7?!R +J'_-0QW)?(2,Y[O<D6LM^A6)A*!1O^LWD64J#/DZJ&ZK";$;!
MFPF"'SEWE]3SXE9;36"!ZT_%)ASS2X,6L^R!JIQ&!(N%1XD84J;39H^"SP3V
MHQE#>9D%/._R\,2L4,0+1<QZ8*J N2*3Z 5G?C4[_?0X[W1=L7=PM8,%]/>*
M/I,P)BGV;IA4PGR/T?W1$%-A/I'>$:P]:I['D&Q4UP+$DR*(L2B4R$(I8::?
MT^+"S[DH+; 'O_K]I'._8_P2CT?2#RQ@.BV^?TPRV3#HW5X]?/1T3N@1B_1(
M,//,POF%#$;$ D4\>O]7ONVK\K]M<[X&AT+6(<WF?_[[I].3'W^.4GP])-5K
M!WR?JOB]H6<9E,T(6^>.Z@@L0"ID&E+\DHE-PK'':1])P-TE ULD!4\+:8Y=
M) 71=_&O/C6_EU@9ZQ3$#B(EXF,1)X4<R6[B)%2@CQ*K+'(:]9+G%B@6,B)I
M-CT:+5/+:3Q*2RP0*21!\FGF'I6OD6].0[D[=LWXORGD8W::>^Z#9YLD=+9]
M-Y%9@%W(V]0GI'OTK!*@:9A2?UO@44C0Z.J]U_>4%<WBM 4'"V0+V9]M,J1]
M1+1)E69[S?QC"^P*&:-TVK3'HF7^-#NR*2FQ0*20'LKE4GM0-DBJIH&I++4
MIY#!J4ZP]C@UX^3,B1MX1"=4N!LXZC,6 C.UBD?5JRNB,/5BX*S)+9 LY%AB
M[F&:Q?!'L8!DF ^H1C)Z6/>2;(N\>Z\=KP<0VZ?="APM@J.0NME- BY2!26Z
M]$%DTS<$PIEC21X%=<C \[AC;-!+VJD;[2F"Z3N34R($<:NZC,VX6 1+<6E-
MNB>)Q"(C%ZT%HXQDE!+==S'M,K7E748M13.J/Q1R1=GL;=^4-VG*J7QK13,M
MH;  JY#K23?!%,N^:;5!"SR*9S-!9D;UBU64+:U KH': L5"ABB-8I8]FJSB
MY&V/:1M,/Q*]RG,QIXX^?43XQH(*1&MI+? LY(72>*Z9HQ3W'LPV8,:?+\#)
M2M!)$#:\:^;>8?&%J I8+6M9 %Q<;I0".!:#TG+0Q0J!)!2*ZM%N@W;%)[(*
ME!NH+= M)*+2Z%9^+^LQ;8/IY1RS&9$W3$\,EGH=_I"+*QY,U#3PK+'>D(M%
M#!3S7:D8B,0BRE B&$%7CF+1?7QL'1_Y[]^I[\U5P6!1Q0+YVOQ8V2?QS)?P
M'N.OL(ZB?.*[#\86\5)(F>UX;44_X=ZD_QAJT>30 W^Y^545]Y4C1,M:%E%1
MFQN+Q-QJ,<75&:_0?3]"W 3MVS+8AH$"  8^%XK^82R[?EGHLT%J0V S5LUQ
M\;:072O&!:J("Q3*1VD%4*1!'RY;K<$J?Z&TJ6 !?>MU67W/O^WFX7)<+6DM
M("TF[BHV%_=@;M:QWW(V&Q-]]NJDZIU=1F(!76V.3O-$FFFT5J_O7-M\ZE $
MS%;A>JKH_:1'3]!]7I'P2]\EEU5PMJUN 75MMBZ6%Z__BB6:5?&Z/W8CH<@!
MJ7THM F%.PP#%C.-L6K)3>064->F[M;\^S:^Y7C;C$3O0 $_\&^)7EV 5V85
M:]6HNK&"!;BU.;EH<!R)0$8&BH7TZ-HM<B\?+Y666.!5R*1E&EH_$FK7Y.*E
MZO"3"T)G[#* UQ)S5O]+W%EE4M2VF@6<A417IOFM%[7KOT)1*):%0F%],VSU
MQ1I3)F\YS SE ZO?RO!_ 18PC+EF;N4RL"VY6<1';<K+B$??A0I\CSAKWBOQ
M>Z@&(EJ//G0VZBQTFANZV15ELX%OLM!6(['6]9O#XZP^\[7N/DPF/)*)(J']
M>&VS-_HFVY^JQ@ [X641)SL]=JH?;6SZ^=5?<!:>T)ULKZI/G-M4L8"_=BW<
M6D8X=8]W;/5I\(TVT56EO:L)+  L)-:R&^OZ]KC9@K?TGKK*]6UE1!:0-2QG
MR^W"ZYN8/6XC#-6X%7IUI!88UF:^-&^D>(]E>RQ+ 2FL/*FEL4"OD-JJ0JKO
M-UNUOVLL&,PCY",19L.JWL[FZ"\)U M4Y5S9LI8%KK6+R6(Q".2$^VE?F?UV
MCAG11L+Z-KK)MN>*#[_-=!:8%O-@-5NA^V:[D_,GR_%L4\$"V$("J_9\RF\>
M6_T??<OM$YDB<SONN0*R#P>2ZNN)#Z)G<T&F'P[4S).'\2VH_P2S7[_X7DRB
M)=3<CFMB(^^I2'#, @NGP*5P>R\PX0MBWJ='L?(Q T65KI[9Y:SEP+OA:(>6
M>WC2UG*H0KP]FGRK^>_#5@C0MK;F8GI/%E^NI>S#;FA=;>W.-L@]F7V5""E:
M_?XH>_LP_)V_H?@]&,Z%0JQPV7'=A=;A5=RWT=[OFBKZK\.XWJ%^='AR>OCF
MY/6+=->:ME%B[89V2L3U-E"BXEKM,OFRBES_,,%D*[3B>NY:H:5UCHBG9/QD
M8Q5T,Y';ZV#8M%*B^>+O*G6::IJ_Y49!L+ZOW"H(8G+]HY7Q&2YFOX%8M1&<
MKA+_L5D(K.]^MT,_I@^1U]?!;RIV@] K"J^,N^@F>#/PU'?'__/Z11'!L'<9
M2,5]&/O?$7^B+U_76GXXJ"ZFGJ<W@<![0P2ZDP:-Z#ETWI2[8_..<8/P<(P#
M%+YSDDONSUWN8\IN%/$U)5@93"1T[V:+Z4?!@\6'@Y =!9(ZY6_)#'M/,-@1
MSR2G>'E1%Y0VXV\S:3#KI5,'4]S>7F:-L"/MBE'K?4E%*TK*NJ1V:J]2N>YE
M!%TP8$A?B&L.IXDUS1E01] % Z*SNG1N-Z=Y:4D75#9WGV=US3[J@I+0]5$7
MGE#L954M*^B"PCI-0813T+?D>1?4'?&I6F)!S Y=QRRVSNI=1] % ^ZY K4>
MI@/'(0LS7Y%1B[N"")DQG8S2R\H]CS@JP-YC.#5;9:W<FDL77!'WC!?8^>+Q
M6?D;(%_8!<7+]P#EXK">IA-F$$:Y&!$GT-LBX%^JAM@Q!S;F;+$@[()!N46J
M]_K<';T=5ZR@!#H%-_^2MJ?O@GGQ;I,GK,AHB1<50X]FLBX88U[=H>?#$6K)
MF[VTN O*5[I8KV5K&80[XM4EMT0+JNZ)>IBFMUV9#=)Z#1Z;E?N@3<4N&#SP
M L!J2IU;XHX&HZQ1585=4'RD I?RP3.& 6E!\:K"+B@.4RKIXX]Z;EZ8ME>4
M=4'M3]0%>="B*>-9I4M+NJ"RF0".N>F(LVM4<M'23-<%<X8!<V',PMDX^7B<
M&PS4$'3!@,OK!_V=^N$A-TXN/.Z"LB/H._ =%A3#"PO^7^QC:@@Z88#BPA\(
MGP=BQ#U3O]CA-!%UP9!_\"F,)N =BD>#K/:E)5U0.=I"Y*WTD"BK<WE1%Y0>
M, ;S;'/B>6X84%+0!86'9"+ FZOQ$AZOKNELKL9S'DC,W/&<"K4:SP7)N;]E
MG2Z8"1KQ8#8?+WFBZ5KYK'5VI%TP*O.5I?33BXVBX0=S%1=-L*<S%1\.'#/#
MC]4/"WW.B +D=S7S>UB8,]S9+%S@K[?V9:9^Y>4M?/]U;0I7[-T1->=NJ''R
M):^LI+-VY"9BN6,S4M.PBIE;;87-K7;)9(]&-YCXYS/HB6"/_D%<O6\VO5\W
MM>]M_5G"AK2KAEYB.7_$U+T*A+Z[Q"@TY"(.2HA&LW%H .QU2B49,[>NUKK3
M#RGT$<[0A>U@=!$> _F(5UH-T/4BD)01*5/?II,!AQUM9_N@,/7'_84@<^A3
M3##&[X#P\-P;ECJ90%]4(*-UO,^8>I'1>EIJ>J,XHI.\6C;%N%<YWX"/=^_-
M+OOMB3A<IU_-K4K/%$:)WDKW)#=FB=$8YK/3:7BY_6I,7M2%QYTOZZYVH[I;
MC#=5S&87$V+;D_#-_6T%XS>OWCG[6YX;WN2/;=EUSC^EA[ 5SV!K\LNF;#KG
MCZ93=)H<T;I^YSQ0V)VZ:K+9HD9'K+3JU5N] KK\_MOX9KC\$'P'C'#T*_;2
M__L@?6.;3&QO[9F(RU=VBZO.YU NG&!";AH<%$]$8)@X@6FTYJ1;Q(SI&>B-
M61TWI7A]9+*>KVC(,[<Q0!G,2]W<^J#8>_L5L7%*;;_3X%T:75Q9!F0P1?;I
M>N;T%>5] QZ/5KFD"QP'K'6C,<]>0KM99E?3Q[MTPXB(9XB^Y-*]!9=4[</?
M58*^!2>;TU13C_?AWQ(9WX)K+\!(?0C$#;M^<8"G/DC+Y"\?!9_N)Y*;17;5
M\9^Y^ *:7^(%5=@;N/\*P@14[*6:\JZ:%%_2"I,(1^M^!],E0;$'3-;?TYJ(
M.OJ*A:E^R2Z@,$*39?#U-!VUK+P)K?O%RN*NAN$.+L_*SP]WRK)S,\4=6)>9
M,^Z.7X=GCS67*Y5<JS280B_W&\'"+$E9;\O;BD='.Y1HCXD9!.GS;5/6YI]W
MM0NIV6)BL0NEPX:E<]6R876!_',L+Z@]SE<O)%C;UDS8V52GY?>'FC4QK6IV
MU@_I3B1^7ZR2"SB"=2<YY($HZWEL*G6U]>HCPZ,94V:,5O*\H^^&*Z)WA1)W
M*+@/4S2'$%?JWS<PG=/R]4:;]1O#FKJK?5,Z\)[TNLV'Z2\R?,-#<_0"5^_*
M#_?"/H)"NDWJ%7H+S47/=RMR%;MGV]%P21LZFNN/4M%A_66>R!-TM15G>J/4
M!02EO56V_,]@TB,,M1VZP%[<P5[JS2MT2HD[D,E"6KWH;>CQ96E,MV?QIWA?
MU9J5O'TW]TPIB\YZYIXS!_0<N*Y9 RC'/->5A2D'LQYER$557[@]FZXVJI'"
MRCQZF%Z$(D=S0E1\#M3@A29.L"+]^I-IE_IZ\1UG39/I!OVOS$X%2V-CXNW-
MW<-6B?4<1$\XBG<8P;B\.%VI(^UL\]9]D$GL1(OJI%Y/R?6DZQ('<MU^+>@Z
M:V-F282^&9!XR>[?TJ+N6B*(3P/_TN,2VO9(<>?+(Q$.T.!9DJYJ(K+O2//M
M:Q&RV<76%YC?ZBG#PY(1(>=T432CGF2+7F)W5D37LT?O-&@*J082WB.UWB=L
M0=G9L+N>3@$*F,;I ^*A3S/IM#!=SEP38%?T61]4Y2;@M:FQZ0M.'X(N6YGW
M_B@\I!%^_AM02P,$%     @ T:,&74,?W\?V&   7$@! !4   !T9VQS+3(P
M,C8P-C,P7V-A;"YX;6SM76UOW#B2_G[ _0>>%SC, '$<.R\SR4QNX?@E:\!O
M:SL[=Y\&M,3NYD4M]E*2[=Y??R0E=5,225%J262 &^S.)#99K*JG6"P6B]3O
M?WU91N )T023^//>X>LW>P#% 0EQ//^\]^U^__C^Y.)B#R0IC$,8D1A]WHO)
MWE__Z]__#;!_?O^/_7UPCE$4?@*G)-B_B&?D-W -E^@3^(IB1&%*Z&_@'S#*
M^$_(.8X0!2=DN8I0BM@O\H$_@0^OWT.POV]!]A\H#@G]=G>Q(;M(TU7RZ>#@
M^?GY=4R>X#.AWY/7 5G:$;Q/89HE&VIO7MX4_^3=?X]P_/T3_]<C3!!@ZHJ3
M3R\)_KS'QRV&?7[[FM#YP=&;-X<'_WUU>1\LT!+NXYBK+4![92].1=7O\./'
MCP?BMV731LN71QJ58[P]*-G94&:_Q8;V$B<)_I0(]BY) %.!>NLP0-N"_VV_
M;+;/?[1_>+3_]O#U2Q+NE<H7&J0D0G=H!H28G]+UBEE2@KDA[!4_6U T^[R7
MSJ.$$3KZ\.;#VS><S%]."+///< ),-@W[*8HB,D\@HG ^H#_^J!H>C#0R%]@
MQ+5VOT H3>PXJ'49A9-;2%&<+E"* QCU8*O6?R@>^41"2T8YN9G=K/C<9]:5
M',?A#1N+\DE/T0+%"7Y"%\S%+)$=ZSW(CB'1"4P6YQ%YMK0#3=<Q.+M?,#P7
M) J9,SW[9X;3=7<6532FX;6',7<B.)04^7)FR>&F\7#S/\%,VEN*$B:<F )L
M!MQGRR6D:Z8%/(_QC D<I\=!0+(X9>OW+8EP@)&UX]IEA*'D/ X8A@D64]R.
M[VJ/H?BXB)^8%@AEPEVCU(Z3>I^A>+E#C&Z&D@<*0U0H/[E# <)/\#%")R1.
M*0S2XR1AOIUA5O[@$L-''#'-V)K ( ,-AP"+6.:8C;L9[RLAX3..+.>@D<!@
MOBU;K2*,Z#F.^?IZ2\F<PJ6E&]/T'8JW4_1H:;EYR^'&I<Q@4K8>YY)A&%VP
M^)-FPF4S&,XAIB+:OD(PR6CNRFTY[4=[.*OD$<8#?+&=4Y4.PWF$B*V (5OI
MNDSN:I_!9D#?Z&/$B(,%A4N<EB;!W11;K-BVUEI91@(^K.G3K>W#K_&[<//
M%Z()I"['&2.NZ2*#JM\X,4X7KM0]/8IWN@@SX' 3Q#[=8&HE,V2LT84UN;W;
MN*,;U[N,,$(,TLT:&MW&B4>Z33Y5S_%BDRZ\Z7L/QE^P0&$6(;Y(D3 +TC\@
MI6P]6I>^97V*4H@C6X;MR?FPEA?,7',F^9P:?U5OCC@"DAD-%C!AVSD<H.,H
M*K+L;-5(<%AD+]E2$R<S1"D*^P+<<Y0QXIE^.)HI#(^+%+/TU+F*PO!\GN($
MSN<4S06&7]9%>-*3YS9JP_/_%?$TQFJ! W[(1I=BX)[<FVD-SWL9"C*MI10_
M9KG.SN+P"M+O*.TIA2W5X>71A+0]Y6BC-CS_)PL6OZ+D(N8>[IDGR<X)/279
M8SK+HL'DZCO*"/+6]QK2'J.O<#8D/=JY]5M,1AEX>'S9K@&G:#]BY,/ZYNRZ
MMW^QI3J6/)>J@<^SE.U_CI>$!?;_$G[[[&6%XJ3O)-UIJ GVY?WLMA/!<<\L
M^@E@2VMXV[LD\?P!T27/)/2T*26),2+/%+'=2IIOP O;Y#.3H7V*\@#]A"1]
MI>A,?G@)KR";@<*+#H)+*[D1/)GP(5?,R2RSY27B.RNX%MF;OOZJG>"0N;=^
MLU?=<P3MEFDQ]D="$=NBGV3,+.-@_3<4SGO'-M9D1]CE0!PGEX0Y[>0F-J<%
M_YY!RF8HB_=[[_9W'6U$1'DPQ4QGC>,Y6X$S49,S@ OH3M]M%KGO_!MFK#%V
M(LL5B?,2JTWB>+<(SHKD"#GROI&9@< 8F0<Y#]X[T: D,CRW]S!"#V00GHVD
MQCF?Z+O%--,87LMGD,;,[26WB(JC")[Y#GA0AZ,L[;V6V%(=[PRFYT[#@LX$
M]2/]F.]$L"I% *,@B\2V]I+]O2(->DD17^A+>?A8-O7Q!0V<\N;%;8=#L,^O
M1HBEA_U164D_*"^U2GD53T>,D4VQKV"*C<"6BY#_*2$1#OF4! 4ED),"/WV+
M819B]IN?RRL(I0 1"2I,BW,30JOV4-XG$3<=9C!Y%-<=LF1_#N'J@!O* 8K2
MI/R),!UA-L4/_LSW\GDLFI:T(_B((C'BGT6[6K,#)[SRVG018R4+/JN>F#OF
M1IJ609>(/O0R6':ORR89TC$- *%L5G_>.RS'@32HF$_SWDG1XB#AYWZ<S#[#
M>UGVGU&R-*FZ4"OI(XH,">-B#SRSC<<B%=R[@?!^06C*XV%^0)6D1<6C#C%U
M:SN CIP"9)+3)SR:^>=KE+9[ V,O.WS>.L7'1FZ?<!+WA[;,)C8HF?K88?3.
M*4;M,ON$4'GBOA;W*7285%O9H?#>*0HJN7S2>WD\]@=.%R=9DK*=,!5RV4P1
MJ\YV*'UP&Q#8:\$G\,04MPQ!56WMH/G%O1M3-_0(B>((EL2!W59 ;NF&XUM*
M5HBFZ]N(U\_%(0^$5SS0,CI@<R\_8O\F"C63LA'=*^-215M6MM;6T8^]0"M@
ME@KP";/R.':37-X4:>CA,O7Q8U?0BE2[V#Z!9%KV;>:7;7\_M@NMX'53AT]
M*FJASEZ"*.-OVVQO NMW%3:]_=AMM(+8114^0=@.4U<HQMY2M$+AL[K+@W6K
M1**RL1^;AU80#(+ZA(>TS;%9>33-[3#YU34F1F%]0B7GL6TSY\O&1Q<]]]\\
MN]D/&.7PVV"D*O/6C(RJK:O-RF-[LJ_2R+7!Z_7<V) T1//)7LJ=[2U<\VWM
M<1RRG] ,A5T,J1,1UU/<&KD>JO$)6;'&=4%1V\'UUM\:L1:1?4+G%#_A$,5A
M:5WMWD_7P?7>WMX3FD7V"1U5(F)SL;W7J52SM^OMO#5N793A$XB2@#8[&DUS
M3[*W,G>=4KCUCAX%3MV3N6HM^&1TQLG2-Z6K).!1'-4KL6O0BD^ RA= K-R(
MIKU'091URDHMLU?HR,^!6GAVK_R?3OL[!K .'4&[1'Z;TWU*@N^5PG^V].1'
M%[?\RC?3:)J_J\$#V ?"I>&NC42,BWEY.U9OB4/1=U6Q4:S'0HR6:FUE8]>3
M;UA\&U4=6O7X9./\?@B);2!LMG3M:D;%3Z<8G\![H.)RYMH&/E5;UU'(J #J
ME:. <+\OALTK7 ]?+^__O$1S&-VA!-$G92S"&]7:N,[<C .&0E#_YM%Q&(KG
MX&!T"S';7Y[ %4ZAX>Q?V\%U&F?4&=6B)I\0O>-W&V,4EG=.CX,@6V;B'NTI
MFN$ &\(RF[ZN2SY&Q=E>>3Y!+G&I^SX/?\CB&J4WLP?X8CR_ZD;(=>G)N).^
MGUI]L@QIP\D?;&UHRRI7H.GI>@]C*YM^#_[#I!.ZR#?PE#"JYO>#NF8NV=\G
MNKY>^^940;ARE_WMKG?9P4^547X>]7)^CX^NJ81^9R?T=C1 9F ['H!Q",2(
MH#(DR,=T?]/_*V5.]Y:2F2F2J31R%8B)]S'/V;Q6I?TWM<"\FHK]+S2NS+V(
MN?;0"J0:\59O'?FTS/*G_FYFO,I8N&JVV\,!2NZ9$S8EE?1]7"\][<"U2SQD
MJF'W&J#<O<7S\JE&0_5/LZFC'#P2*W+!AB&77FOG>M9K=5T/5)3R^32MBR]*
M\H*W<(EC_I2X>"ZH%9+6CJXGN"U&EAKP";2-:-L=FL5DEQM[,X&:$M3A4?AI
M+_<R]B+I+7/\U+6(>NWLA[?7-W=]NF"A;K, _DWK+7=EL(CCC'&]W;A\03-"
MD?2&Y-D+\U9,USB&='W!])5T/:8>=5#7;F8"C>KFMM^FQF0B):?2*\!Z,]%V
M<.UVIX>X17<#PJSQX7G*ZPJE"Q)6LR0U[ZUJZ-IO3XB73@7^3<?:,^/B"ULP
MX-K@!L:5E2O%F#_I1,3U>?3TT[:'CL>?RB7/1218^[2"^#P)?[\[GFMF>(?^
MK@^O)Y[XG37K53+G&J4V>[M:,]?AEI+KQI,1XYN!1YZ]_B+]%Q0C8U9?V\%U
MH&4/KE9:KZ:8S7FW\C0Q/RXS)%QV)>R?/O1K)_.KXF^%(8;_F^7O7K078HPU
MGFLG.)!=J:Z[CH:.3Q[3)"E_1/L\(L_B.SQEV'8\2\7;L_RD67RBMY2\K_5U
M'\6U;Y[>YOHBX9.E*40KE37L59#!!W+MXT;27#W1HHPXO$S^3Z.0H::Y5P5/
M<DE0Z54TW^UXWZ?LA],$@JC[NA[^PC-CYY82_CQ"^&7]+>$WGC=)XV.V:C^U
MW'#L0N/_-Z^=]C<=L1G.74V#BQ M88I0?(=:#Y.YEVO'NS-J-DKQ"<13Q+Q_
M@,O02OX\L1Y#8R?7)P([0VBA$K\0K+UT(8J?V7]/V ^Q:2JV]W2=UA\ 2SOE
M^ 1H-:59/7&R>/#4LKOK_/W.T'92DU>IPG)_>Q.?XF1%$G%/[F:6OQ%YJ$>V
MK9_K>V8[0VJGF G*FKJ=FNUX1C;>7:_^@!C%FNHT\P[!"/\+A=PLY ]*2Q\?
MUB!BU=/U@\.[H=-!.3XM;NW'YM]B6HBV2VV"3,4.Z(\> MU+7 ]7/)%IXKDI
MIH9\W6XM"#=TL=S:O_$7T%9]>(4>XY _CX%.4?[?B[CY41MC/&K1VQ)3C_,U
M7;3D.;SEA_^,B<.6;I: >IS*L=*+YTC>4K2".&SUMNT]+?'T.*]CJQW/(:U>
M06C[RH-M?TMX/4[U=-.4YR#;/"#?9\DUT[,T K^30CMHTJ>-DE(2SK>4RBQD
MZF@(.B*6Z'N</^JA,[\A/UNN(K)&Z Z)-W5Z3GX3%4O0?<Q1]9+W1T"]NF[U
M!-U Q!)S'S-??<3]$2 7#XB&_*,(Q9L>>;3"5JN>\%L2M#0%CW-C.^K2\SCP
M-$,/I/!CMY!VM0)E=\L:"X_39YWTY-/$UTB>'UCN5K"EI.&L,"A *#2<RVZ^
MYW-#3_D+&;RTD-_5N4-I1F->N-?RINJ 0WA:*&:PB6;)T;#J]FG&L'!=G&4]
MD.. R4;1ERS!,7_9*B]1Y:HK?F,X+^I&Q=,BM X6T4-I7BV$#0&L*E_,O3RM
M2]L!5=_K7&3'= \C=#-C/V&+?+J^C6"<LH",NZO5TGC]K1,13^O5^OER2Y5Y
M[:W[ -Z!AJ=%;#O,Z3YP.[U7KI)_4RNT0SRKI.'6JF]FFT"JW7PKC3V-,0TX
M:>Q4H0*O#++D\YS0.[3*:+!@V\.;6=O3W2W=/ T(N\-G5(M?0$H+X4629/RU
M:69\Z-$R5*CW\33ZZP!AJT)\"@28E6T]AA&T9DM/@SA[J'3">S7!N(C\_]P'
M/+%(4]0I\=Q D*)0;!#CL/H#J>4MHE@\@%5+PQ574\]>F(.)Y^@.INAL-D.!
MZ3+SQ'RX7HK=Z+UYM[!K!M;/>](>*].T"=A!F>,M43XKT^1\/5KV<M%88"6)
M>Q/OI-B-"O,K,3#Z2DFVXN^/X23(G[M"X?:U*[VC]8$WUTN[%R;N Q V4\?E
MRPWW"TB1^ML]E2<</O1YPD$F_I^0Z>LWD(]1>=%AJN_6-$6U^$S/+Z/)/>GW
M>XK'\FLR?OSX\<TA_Q 1M]Z()!E%["^;MB/R\P4F..$Y5Y0P%90WP.^Y<Z%K
M!A6>Q^(AHC@MR@K%.RP1#N3U2!+B75T(,0#'0AY"?#^H&$3@M!T&;,<!VX%&
MU(!(0^87+Y42O:]+5.TP(F=2\3T+$E2\?:CS)G5Y!6*4CLI?\6&>Y('"$#6O
M?C2*4<H?J(I2)*%^J0M5CO,*B)%*"TG =JQ7H"0.\N&$A6U^IJP &@6QE*UO
MF%?=ED+SS]\\XT@YXW]MPE?VE\78DAC306>K5801S>-.GI6?4[A4<?VQSG79
M%11]P:;SB/Q6T@Q;[H[>U+FKIEA&X:2\B5K$[#"2KJ0R$SB'F(HO+%^)3RZC
MZOFEQ/MAD_>2--C0!A)Q81Z</!#T076 40U]4UZL$N2H:=CBNW!%AU%]DK(B
M2N*ML<P674"C7&R,6=86Y0D6&XMH)8[YRZ]'A[^4@<RHW/*Z0IR69IP_-3Q'
ML6;M/VJLE%+_C3^6*'@:UAC"FZ/&@CM$>,,"T.)/X\:>NRCE@:^R2I4TENMA
M5)(/.*Y"Y$A.+V!CE9:[3<-H-1+4L]I8FNOQX#3L#A 8:F5\VUC@!PT/I\)3
M&R?J!6]$!^9H<1I)>'2E9[D1!_#F4S'6)RK3B]((&W:)S::RLDV0II>K$6O(
MH=I4[D*.V?2L-N*+6N0V#;?-$$[/<2-<T =R$S$?+%"8%55V81:D?T!*V1J\
M+EW@^A2E$$=*:1HK?4DM7^P%/5 2W#A5)EE!T]_HIF#PFO/.9[1*^D88,$R<
M4PP--F-/9@!%4<PMQ0$ZCL3Q$!N"9U-Q6.3-Q;L[^9M8!KMH)@1DNRB& 6(<
ML!T(5$8"TE 3&8P<QED8P+M&X%&- YT!*<5X>I#>-:('&22)A*1\1S?"<E;6
MXKNE^L.]>CM7]]<*+N[@\Q5;BR@+ FR8KC9W7:&AUGGC"II!5)^.I#>,_D'H
M=_[D"0F0E275VKLN]>B&BE)8+V$YY]^(9KY'?!C> I9:>]=%(]U@40KK$RSB
M&KGD_^]7+$+E ;4!&E,?UP4/5O"T"SW%EPL+1F]A\)W%A*5/U:U[^3?YC'U<
M7PXQZ]Y" /^FQX9AZ036X*NND0<%ERJ>=?[)?\7S[(D0^H[MLNB3^3D ?1]O
M5G,+4+0BM]133UZ_M-F#L)T%G,\IF@O*7]9%3M:P'VFD!N7]2)4<>%R72=Z)
MMH9;P;XB?I2]6N#@(IX1FB-M$*N1)I3%VA(#$K7)92H3YO+-^"_KLSB\@O0[
M2@W2-0\F)>E*LD"F"[ZL :,,<M*3BZHY@3"(V$@RRB)J#QA<[YJ;(O*R8O%Z
MLF'9,O=RX_>;/(DEJH<LU7ZN%V4;A&KK@9TJ?%JT>7;OF9< *;X%))W_M6+9
MC8SKI;T/M'T4Y=5M*J70'5V-I[/2>CHJ8/9I,JKXY4^P]UH6Y(Y>3K@NJ#6U
MX-G%@$T <R(N3"07L9W', 0VS;-(*; IA@$X!IN! (M003E42] S331G>M[.
M(+GQW%)5&%*I!]DIL-/D?KCC:-:\:%^VYGW,71S=J"T8^@.GBY,L2<D24<&1
M3?!IU=G9^M"N<J6WZ: 1GY8*$]LV*X9M?V<+QPAP=EU#W".ZJ<CH-3>;O9V=
MQ R(IDXG7L7:1L;[SD\E 6>G-V- :C5#_4)5"&N7\+#L[D:V;S&#($+A-EAL
M%\C4Q_4^L1-6-1MMUX5G"P<O80V*6C A-7]#J>3]CH?#,9P;OL'0@83KG>0N
MN';6E%][S &*]&VJYAIEDP.7ZSLKN^.5'2G:C]B08;V>_]IXBF*LERS(7G*R
MS0K_5^#:P2E*SM.E2M+S+&4RR%\,+[XMI9?_?:.0LBD_T,@/\O& /" H1G1]
M!F/0DC$UVM;/T6=+]5PIT+Y#2^;KF+/FQI(P,_P?!&DOD>V)NXX)[/"N?]AT
M.+7Z%#5T$^N:^:*'9Q0]H2OFTQ>&BHY=Z;J.+R:P$9TR?USSX$;^\$R&LHH-
M.=>5HQ,80TUU/[@-L)$-VXS>!%V7J$YE![+ZQJ]G[<;@\2Q%U 0RI[D;2=?5
ML-U@WEU>'S>9AHO.%IO']YVO/$^]&U0^FF,C6;/\4?.(CL,=[B6)YP^(+OFE
M;<-VSECRR&D 3J2X^NUVB\9YV%[1/F$*7?,7-I<\ :%?:,R]W*RF#&=^($Y1
MB V<5UNYWC#9:+^VZJG$G&0IXU/P,G_U4OF6=^&N:\U<;S>Z:%@M@7]QH[BK
M([NBUH,$?0_7.X >,Z!-_/%GPSV*,:'W*&#>/<RGXCD,Q F;9F(8>[B.OKO.
M$0OQ?9HNIRB_1']"DK3]S$W=VG7DW&.:F,3V]M8,BV8114F:/[E2A/5\<\#?
M,98$,@1?QAL9)?WR39=R!/$2% ^<PV(0$+!1)C]6N()I1L4QCG6L:;R=L:7G
M7^0IRV>(URJM'$66$@];C<I?^+BE. [PBC^H9)_)W9&LZ]A5A5\]5AU"<3XM
M)9T$:DW:]J/F.J(>&G>/$[3=Y3#G9_O2<QVDCP+Y2+G8Z4$_)YGA8+<G.==[
M@C$@EQ7U8R,NI3"'0%R0<[W%& 5Q.=?K51I>*N41]3-7.,;+;"GR/N67$@U1
MM_'J4%&14Y $@B8HB4ZTIY!V#<:L>^,F4&5KX*"&K'R#E/V14&8G<;YU#=9_
M0^'<=*GI?:.NKH+)]ME1_K><-"AI@YSX]&\I0!PGEX1_E/TF-K_/^O<,4K9W
M/>,C&91@K*03PX&?\@%_!B1N?[+UG_FP0$@X?9E=:0V\VK*2]+#>('\PU]9M
MS4(45!9C@&(0XZ[9O[=Z+2;\AT&_J.#049R0Y8K$^:JS>=:WM=+R@_&1E2W-
M/%=4/ONKJ*><Z)5B&T0;IXW5]XJ=(51]Q-B 2<L;*K47C2=V0?<P0@_$6A9C
M.H[3 BEQ))-2!J-E-:(<'>/3&]<9I#%SU/R#?.(%:?[T<" ^=A=EJ6F%_&"\
M^UR2!8QN_C3U*_&J<2"\8$%\*AML/*MM@UDS"C(\L#TQ?(:OI]B(UHAMC%]3
MT4M7[#7XOQY9:,Y^\G]02P,$%     @ T:,&744A*T>?,P  TDL# !4   !T
M9VQS+3(P,C8P-C,P7V1E9BYX;6SM?6MOY+C5YO<%]C_H[0 O$F!ZNMW3UTFR
M+\JWC@&W[;3=,XO]8M 2JTH9E5BA)+<KOWY)2JI2E7A(2B6)E+N"(&G;O)QS
M'HH\/#?^[7^>%I'WB&D2DOCO+XY^?OW"P[%/@C">_?W%M]N7D]N3BXL77I*B
M.$ 1B?'?7\3DQ?_\G__]OSSVG[_]U\N7WGF(H^!7[Y3X+R_B*?FK=X46^%?O
M,XXQ12FA?_5^0U'&?T/.PPA3[X0LEA%.,?M#/O&OWON?WR'OY4N#87_#<4#H
MMZ\7ZV'G:;I,?GWUZOOW[S_'Y!%])_2/Y&>?+,P&O$U1FB7KT5X_O2[^DW?_
M6Q3&?_S*_^<!)=ACXHJ37Y^2\.\O^+S%M-]_^9G0V:LWKU\?O?J_7RYO_3E>
MH)=AS,7FXQ=E+SZ*K-_1IT^?7HF_EDUK+9\>:%3.\<NKDISUR.RO0;KN4&W\
M[E7^QVK34#%TA>@D_#41G%P2'Z5B@6@I\L 6_*>79;.7_%<OC]Z\_.7HYZ<D
M>%'B)(1-282_XJDG)/)KNEJR19>$?,V\*'XWIWCZ]Q?I+$K80&_>OW[_RVL^
MS)]."%O*+SP^ %LA:W)3[,=D%J%$+(M7_,^OBJ:O.IKY&$5<:K=SC-/$C(*=
M+KU0<H,HCM,Y3D,?12W(VNG?%8W\F\,+-G)R/;U>\FV"K:YD$@?7;"[*]P>*
MYSA.PD=\P7:C!38CO<6P?7!T@I+Y>42^&ZX#H&L?E-W.&9YS$@5LWSW[=Q:F
MJ^8DRL88AM86B[G1@%UQD9]\AA2N&W?W_2<AX_:&XH0Q)SX!]@7<9HL%HBLF
MA7 6AU/&<)Q.?)]D<<J.^AL2A7Z(C3>N?6;HBL^)SS!,0O&)F]&]W:,K.B[B
M1R8%0AES5S@UHV2W3U>T?,5LW PG=Q0%N!!^\A7[.'Q$#Q$^(7%*D9].DH3M
M[0RS\A>7(7H((R89TR70R43=(< TEEG(YEW/]YF0X'L8&7Z#R@$ZV]NRY3(*
M,3T/8WZ^WE RHVAAN(T!?;NB[10_&*[<O&5W\U*V8%)V'N><A2BZ8/HGS<26
MS6 X1R$5BOD7C)*,YENY*:7MQNYN57(-XPX]F7Y36QVZVQ$B=@(&[*1K\G%O
M]^GL"VBK??2H<3"E<!&FY9+@VQ0[K-@-V%A8R@%<.-.'.]N[/^/WH>:.'T0#
M<%W.TX=>TX0'6;]^=)PF5,E[.J3O-&&FP^D&T'V:P:0=IDM=HPEIU?9V]8YF
M5.\S0P\Z2+/54.O6CS[2[..3]>Q/-VE"&]R[,_K\.0ZR"/-#B@29G_Z.*&7G
MT:K<6U:G.$5A9$JP^7 NG.4%,5><2/Y-]7^JUV?L <F,^G.4L.M<Z.-)%!56
M=G9J)&%06"_941,G4TPI#MH"W'*6/O29=CBJ1^@>EXK.TE+FLA&ZI_,T3-!L
M1O%,8'B\*M23EC3K1NN>_L^8FS&6\]#G_CBZ$!.WI%X]5O>TEZH@DUI*PX<L
ME]E9''Q!] ^<MN3"=-3N^0%4VI9\Z$;KGOZ3.=-?<7(1\QWN.S>2G1-Z2K*'
M=)I%G?'5=I8>^-V]:U3N&&V9,QG2H9M;N\.DEXF[QY?=&L(4OXS8\,'NY>RJ
M]?YB.FI?_%S*)C[/4G;_F2P(4^S_(_;MLZ<ECI.V'^E>4PUP+V^W;AL-V*_/
MHAT#IF-UO_8N23R[PW3!+0DMUY1TB#XTSQ2SVTJ:7\"+M<F_3(;V*<X5]!.2
MM.6B\?#=<_@%L2]0[**=X*(=KH>=3.PA7]@FL\@6EYC?K-!*6&_:[E?Z ;NT
MO;7[>N4]>Y!N:19C_R04LROZ2<:69>RO_H&#66O=QGC8'FXY*(R32\(V[>0Z
M5IL%_YDARKY0IN^WONWO.UN/B')EBBV=51C/V F<B9B<#K: YN/;M2*W_?ZZ
MF:N/F\AB2>(\Q&IM.-Y/@S,:L@<;>5O-3#% 'Y:'JAV\M:%!.DCWU-ZB"-^1
M3FA6#M6/?Z+M%5,]1O=2/D,T9MM><H.I<$5PR[?/E;HPRM+69XGIJ/WY8%K>
M- S&&2!^I!WQC09LQT69,"'B\Q/L_SPCCZ^P'[SBG/%_"!8%>S>/R[,G[&=\
MNA.VJ&?"IGT=1Y+0G=IP@A_5"$.0/PG^E26Y/!N27>O9.[D7<1 ^AD&&HD:T
MUKKU3NCD.Z+!'1O)D,R=]KW3QXU[7 WD/LU98^RW>F-P 2#J-R%=DA13YN;P
M;)AW@O Y&X+ZV0-^&80+GJE XA=>,5&-<#Y*&*>O6--719M7T@'ZIWL]V<N
M+-@5I!G1]=X#4"QF>KG BP>>!]2(W.VN_=.*>!QR$PI1/7"Y#[IBDDZ:DE;V
M&71-XBG*HK3UHBR[;]/,?LTMS:S%)?MQBV[\E&)^K2XIYP.:9*,58X0I;UZD
M(1YY+WG.HKCHL7]*\]:Z)&4G+4U&TAM&QSJS1M#$9F!WLX#_*R%1&'#]URM&
M\O*AO#]_BU$6A.PO?RGS_4KZ(^)O$2V"% A5[/]3E#P(V++DY0RA97$(1&E2
M_F9S&A2_N#_E4L+!,8[9/](;1MQIF/@1X==E)C=\P1A:<QRA!QP)2NZ+_H;=
M7UGAK>+'KY&9;.C,XZ9@'AL.L\OK9AU.:,EU\3T9;EKY1_RKS_1>MG+/(K'$
MV$: Q3%>$CZE9-$&FP('L@_/52P9Z2\\0ME%X^\OCEYOJ&<]<,"N"S23"&F8
M!5&YA*Y$> _R10 -#^S8_&7R%"I6?),Q.ET*4BT&@+X=?*0UHR#^+B!]6NA/
M)HB>[NA:G2!75^4 V%J(',9LF^TZ-F]>CQ.<^R,)X5WA4VHU+;?<'@ 4[$(8
M_N($AE\*I=\$P[SMO6SQ[8?A]OW# )^=[P/&H4(R^"U9V^BN2$P;0"%M?O_6
M<31@JB% WEH#I(A$>4A$A!2,Q':[^P]V(-A'1Y1P ,%A;9O*:<S]VJDI*#O-
M;6$#RU>&@XQHY]0R7LI#N*23.7="/*)(V/33TD<MG+4P/$;=[<*E@(&TY 4\
M=*S=J^>$ICR"@(?T%]X Q?59TGHD&(&D@_J8M7VN%K1[A=."3\5VI^@U$HBT
M+( :@BVH1-VE#;F)"5!PGY' I&$  NF=+9#*9*65*$4#P5)M-1(@:B1#HG]O
M34<HD@M^#]/Y29:D9(&I8-+D0S'H/!*@3#F!\/M@=7_;8E:SKVVU'0DZ .$0
M&!^=N/\8WGM& H&Y]#_9E?X5B?UF%]!ZCW'<00&Z5=XA.\#<4++$-%UQ@P=/
M]. WL"57[Y7'O:J778#4@B?-N #ALF=3DRGY&YX;7G V'<<#F@DC(&[6# 5E
M_M0Z&GR=5:F,* #ZC <M#0\@4-;,!RIET^0[,^L_'@ ;\ .":<W ($EB/GOR
MHXS';VY*>,)W6GWO\0!IS T(HS43A!ZJ\<%A)G)KIH<R,\[(KBUI/!X@(.)!
M3%PP)YB<1-+FX\$%)A]$QK)MP4@-'RT>S:"P;&C0 3 .(X+:YVG-9%"I=<,+
MYJ7$_V,KG4YOVS$=88RQ((UX \&U9F"HD&\<*P+WL05@&Q! &)O$D[RQ:&%X
MT#N%*HT<@,;8P+U+-BA]ZU$'-VC%35)LT;'?T P'=7;U-CJ#0<:$7E.V0'3M
M!BHT01+H,";45"R "%DS$9SR%&<<!^4BT^^$\@YC0DC% HB04\$,ZW+2K:(9
M=GN/"3MC?D @K9DAFNR#X]X"F^Y^UNP/%4*;N-B5W1P :G_5O:$;_HTULT7-
M3U9EHI&3<+NC RCNY2Z4< .!9R\#3+F9MW4:2@88&9A-N )!M6<(J=0&-,%0
MWGYDD"F8 !&R9O&0\MCPM!L;/B /(#S63");CWD:@.( %/LK'&HLK!DPVACI
MW3/+[X]42W/\+];L&C>TT(@$Y9JD0$EC6U"U 0<B'T3%HBUCL2"Q"22[+<>$
MAY1V$ QK]H@[*DH:KTS@J+<=$R  ]2 D;>T1]3JF=Y\O;^\O\0Q%7W&"Z:/T
M2.>-MMJ,0K9RJD&9V@ML" (A-13=H)!=D$_0,DR1(B8.Z# *4 Q8@!"25? 8
M!J&OO !OC(.R,/+$][-%)HIU\( "/U0H6_J^8\+-D!L00IOI%26APO_%2\U3
M/.<UD1YQ;I3BKR=<X?1Z>H>>E*[<)@.-"=PVK(%(VZO<4..<D9Y'0]_P]Y^8
MT-/\D3WN6KLC_+K-[5DD8E3,RJ=RFMR>VHP_IG71(<?@<G'!F"&]>K:/=1OO
M9=J(,Q#*BBWD;Z]VF+YD/PY3P?8&<0O:'*>AO]&EMLO9_K)O.5OOSUNS_*7/
M\KQK0I/KZ?6R>+^7PP-MU7*>WYKQO)G-(U-O,Y^'XL 3,WI;4WKYG(=:OX=:
MOX=:OP/>2PZU?@^U?@^U?@^U?G_T6K^ 8?.,:5DT1E$9I)" M6-Y<Z"UNZ5C
M=42[9X;9LZ3R1U>14),,X?#1(@[B-?1SQJFT#H#6AVPXP/V1[)-V/-&K$6\0
MMA9/(R7UZ]( /!.1_3=06CM;#&8-\C:P-0(>YM8Y?9&_YGT]Y:4(A 4'T\?0
MQ\DMB0(8:[C/*+]B'3N@'FFM& 8E27)#R53E3JHT&B4J-?I!5=!:2EAN[(IG
MQ</#!G7NP2ZCA$C##:A46C.+8>%G**A5V+VVVEF#QDR\1$LZA(.]8CYLL5$4
M\2S08,&DR+GBK[]J@=%T'!521KQ T%D+>ZMQVF"O&Q4\ /40(&U#WP!SA'"<
MK$G8>-0!>P34?!P2UW, 7HNM?P9*:':%X0 PG1SWIO!8"Y2[(C$IB?W,I))P
M6E5[%=!AE# I>5'YJSJUIPKW_Q><SDFP[67>-:76&HY+Z"H>0&%;N^V?$XK#
M69RG,OM52SU?*7RA'.,I:Z,T]3089%Q8MN4/Q+FMA0#XJ,H J>)09:ICF2R;
MFS#.PQC%/OOL@6_-N/^X8&O!&HB8-6/"YDPMC8IAG#%Z-Q$U^:);IT7CY.R)
MJ52,<,8:70G)-(U0[''2<2VAH>0!KCN+]9$+5HHOIY";;LW4.HP8;X 7$"MK
M=I,KG)K<-[::C1(7"0<@&M9,(65FPPVFMW-$\3%*0A]&1=I\E.@H. %1LI8:
MN$OL:1AE*58XMX .SP*I+5Y K*Q957YG:O><T3=Y9,?M#%]E7##74T%Z<IVE
M28IB[E75?&F-AADEKBTX!-&V9J0!F"C6:(V7QGA# STGQ-4\@HYKBV62:MD'
M99*8WGEJT'F4V!KS!>)IS9ZDROZ#S2CL=BY^BL2=:A+\*\M?7=#G5/8SG[55
MTQ1Y27G6GH0!+C5K02\J;OF[X><1^?X/',QP::2;3%/QRB[/C@JGH8]*[MLN
ML*:S/,-EU4X$X&*R%[ICD+4LS5C-T_C:K1^#@9_ADC'F&EPEUFQC"J%TFRG>
M\40C746]2 %<514KWK#)Q]7\W'(_W:B&6SFX[]KDX/(Q/3'H5I+M0!G'XBHB
MS8O?9NU]&]:J@_\W6I+DKUX^A_UTXC6A-6U?5ABBWM96"8R"$ETF\$X[9U)]
M8;'72E/(.'4^<7=-=K[.^19)8OXYJ'-U-=WLI>?*40"@4O'L4 K%#IFZQ$Z@
MN9W$6S-9$Q,&W+,V=0&,RTFWG8'73ZIMES4V=2F@M:;W=C1@];<!%M?<T.S<
M[K95<3(G60<&V*6'CZES5-3$@_#8JU<G+Y"HPTC9[5ZV9SN&DYZ!SLWE)D51
ME74#)"WO+5W5C42MHAD\+BRFJF^7G-27#9"UMU7$H<G:5U .P>)T04WM9F4Z
MQ/T[]\%KQ@R$YSMK>#:I?"BI"&BI,D<#0X&49.?TL@8!$O7P .=!D%(,'N@.
MZ<8YY8UTX[R+\YBH*0?5 6O/J95/8U:N63 LLM;.(P(2#2H!3GPHXMF"B<_V
MUB(](\^<,OQF@-[.@V7,!'CB.P%>_LF7I!MBMMUI7%!):(<0:AN*KDH"AP(Q
MYBB>L9_/44C%8KJ>7L3L@B9">9+)(PHC;F$_)_0617DZ% T?18&!LF"1,IF\
MQVG=A7\P[J$%9"U*'N*Z?1A9I]$SO9#A[CJT)@UH75K+",CK/ZG3G39MG$=T
MAU1(W-9"\L6!]Q4O,^K/48*#TXSRF!NVBY% \ZR6MJOSX)AQ -H!K'G)5'3K
M;J/ZOJ.&S>!^VMIQT[O2UKMZYBZT/? )XG\(:#>/YG9VP?3%++AJ*F8M>]&C
M]5A+@[=L/O06>#GD(S=%];P=%C]]^O3ZB#_6LTF^8C^LV_9'#D^T9(#<L-.&
M":!<1;?98H'HB@'%U'6QO.)TXOLDXW4E9C=,UG[E9>PJ#V]W>1 3<"2J4X@W
M=HI)!$J;:;S-/-YFHOX$(.PCB1A,RM"[78:V._1'&#\78K9Y\^?2<2HC[?TN
M:94N/WDQ[]0?>44AZ81=VP)<8):P#0F'C_P$*\T&O(YTRJL3E[^0O*Q>Y>G#
M+D_E/#]Y8J9R>23>9JZ?O')P+Y].+*_U[[9F[!.OE)WM(:-GS3.OS/P]C*0?
M^\<Z>&7_*A>;(7J,@L^6RRC$-"\UA-E=;T;10D;TIUVBRZY>T==;=^Z/W%/\
M(/L<WKS>)2YOV"<AI9&L*-*$HHLX26F6*W-QL-;RO@BS;'XJR4@_JI->#NVM
MQ_8J@XNUP8?WQ/C>]@1]+O)U_2 9'V_JBYJW]XH.?>Y&ZU<IY!O+F]KA6G3Q
MUGUZ_,!TJ26"PMK1N:6[_.GCFZ,/I?+2)['<)1>FY1+.2TG-< P<^&]JYV.E
M_WH?KHS@IBJC4&G>U([9+E0:IG(6_^I5V]Q')B+302J1VB'=C43R"7N51U5Y
M@_FKG<W5;H/0N:W\P936#N1=%7 0:CO0!4$6?ZD=ZYUJA!OY')+O#LEWSR[Y
M[CA+&(=)<IL+Q#3Y3MYM),EW*IY="H/,R=/E=NTTLYQLIY3M[H,>$OY<2K)K
M \ HDNK:@N1H,MU7O"14N/P+:B>S&<4SH6/F56VWWV H6NF3*/88UE8^F/RC
MVLVQV)>QSEV.^Y=_+RTIQZM2>5N=<"54?:!INKE]H!GQ[%!,^9K>BGI=V*6"
MZY@IYQFE16G'Y%M,'GAB%F?_(EYF*?LSB7W6*U^F.QSK]N@!IK9S\)JM 6#=
M](V#2X?Y<UY\+BL=3B[001_@WK9N*+-H94UM92P/MTL0 P& &TK'04X2RY,1
M8K7VMK*?K<(FEP+XH5G3%D_#!&UTWNMI83$4RM8=V]V.(TU*E4%W6PF[#7*L
M3+F  +1W,_?G.,@B?#TM[B;YE4:4R&/WET6Q?(L_&B#:<D#G,=Z'KZX-8L".
MNR&QM-N?\A=#>12_H.TL#KX@^D?AY%!AR8=K.9J[0.[+E'.WP TSI5_FBJ0X
MN20H%B$1Y7-6&V=-H^^W\:#N0M\1;^#QV]=WG,<P)Q?Q)(K(=Q[U<T[H*<D>
MTFD6U;U_#;_KO49W%^RNF810MUAR.-<1?P_3^4F6I&2!J5#SV1I>ZYFF&EB+
MP=R%?D^>(*2ME0%6!#K"7OQ:A)LZW'&0L 4>'PA37(MEX\T'HJM-7"',22WT
M;9_HPH'"7]9AAC!;M7BY:K#A0'$OU:A#F-):C-Q.[.$@Q-:#$&&":R%O<"CB
M,+2O3\X;2H*,;:*(4A2G&PO&*2\L%DF9J46KE:/E 6MB/*\<<!T;Q!@KQG0V
M0*^@[XJ3SC]F&?.U4+9N0O6*J;WUW$/!7R1+WM#0QUQYRA.?> )0&!1/G8I$
M\OP)7<6JJ(>R5U=%,8TGYO$V$WE;,WF5J2K+Y<>))-/>%1KB!<63;6O/[08=
M4?!9%^R"YIT!(M42FE:6+/MILUS9#_=?<5** '#?LU:U1L,[ZSN$@<!\=6V'
MVQ<2T-VY3;PEO[A"@E(9#^RQ[DG,3GJ VT$Q9)"9!HU;'\>(AH1I0H\AR9)H
ME9O/<0#Z!%DW7:_!0\.4"YXTHQO<C ;>C1[#1#BMV&9+:%X2HY;LOBX2I$*K
MU5"#^^0-(6S/3.?^];WUU3)(]80L'L)8>90>P9ILDU&<MQ V9L8YQZV$ QYS
MP"Z3_\'!1<!DP)8IVE@.B]J$%0LHNUVROV4+'/"R%^P/W,KPB*)JYJS1,NAP
MWC$NG*[9'T9+M;741$&Z(BIIXW89:L$!L_]8RTXE!.><W+UQ+B+S+2P[,>^/
MN^ V['?M37=JJ=U0LL0T7?%7WM-BDU]6+W?]KCAP^A]JX:FEX)Q?OTO6-S[?
M@8[6RH0_U!K;Y=L@AJ +NW^G^W,1+G&,_#\B(GLCA$_9XXSN+I@A&(=63,>5
MXKMDXXJDH9^'T>%ERH.J6+,;3!<A6#%^J.E_G+6DE0*TL*Q5D.^2^[S),&=;
MWL3=E=4OR] RLE;PO8>[2?4/14SH#5JI2ZX,2L8/M?C,I &MR[:5\8?0M&2,
MT0P'9T]+7E]W"-5+0X*["\V*)%2Q':ZNLEM,'YEF4&2XG.(E24*9W:%K@4KG
M_7'6$\Q^YZ[> 1;1)49)-?-U@/6S.^6/LW2DG(.KIJTM?H!5<QQ&$7]L^"(^
M>_+9F-=3_G =OY>(5VT&6$0:"GZ<-64B"'")/0L;?*66>[_:.YO(W775([_@
M\AF;";W,A1IL&>DF?*[+R8AO<%E9R\.K%B4V2 5Y6RNDNUW56)+28?5KJ5!7
MPQU>\O)>ME/A)=0EQZO*3[I"NHU'<B;;P01.,".^F=R<+\LK84==OQ#L8*]R
M85MLY#LU( D'X\RJE.;G!M85AC/H:J>JH$[Z>JRD$G"I'F"?L#F9C=$/M(-7
MT@N%DI/71:B<&)<GVC)MFI[W=G17\X^'-&9GF+U2EZO!*YDHTO@V?Q[MF;7-
M!KC7#2YU9=Y+M8&%'+V:O(B<M(%.C@[%Z>3N;RYRA_+OOC"1+;*%2NY;30:O
MN0DL5J(@#Y3LH)OR%_2DE6RUR?U;YR1;(P^2[%OK5X.*N4DDA_/HI_6)POVV
M?KHQZQA9Z^!A[M\[H\>TL,9I^((@=ND6P?T5!0<4!V=,44M7(C$/^>6?FUWH
M308<(>IM..Q:H07N&;\3^D<8ST[0,DQ1M,F7!2X74/,Q@**E?QAMML$G=\[%
MAR_#QVH4N[@&?4OP-(LNPZG"4&K2>PRX-64'5#ML.2<V=Z[*BX1P.::WM?J
MU7),E2&&J<JUH7Z[BO;Q:AU( W)2JQM8Y61[..]A5;YF:+M\%% MO+9 C:NE
M5WJZ5P2^,3>N>55,X6I0$]ZN%T5SH2G*]%W3(IX--CC)6UJS/1E)G&BH=\+0
M5Y#&ZX\6Q,$OXVPXD34?WARE%&M-^C"+MNU476'@J@UK7YP&=5><AT\\FY?-
M7B;0J=^2 =O;J!BE7^K$E')P=^KXVE:0?(LBS:,]]8:#1RXUE3! ,B3:=]9L
M7E<9)XZ?8SN/3"HT1+C/_9&E9Y1:ZD\Z3IPS8!5\G3/^9?7GSY[\* O">,;O
ME.R_P1UZ@G%L,=C8 &[-HH&*9NL"_AF3&47+>>A7'@527&!KY>*K%]C-8%YE
MM,/M]7![/=Q>X4*C90#SYNM!$7R%530?RSU6R['ERVQQ;%>I4UVD%,V'O\SJ
M94M,"'?C1ML5$*[>:#L!:X"8C03[/\_(XRN1T4Y7.63%#QO$BE_<GUQ+X"G^
M>'(]=*B=T3HG$B)[W8J:2?3;+2S1;[<VXC.:BK2@$I)IZS -P!H@2O8IS0"5
M%O<?'9:?C%9(BA^M7?SMWR0_//^;Y <S&X*MFZ3F>5+%G;+V5E?U3ED.ZU7'
M]8Y7'AO9RX<^7# /%\S#!?/@'CVX1P_NT8-[=!3NT:^8OUP1IR&*E&IZK9V%
MZV,C7YV4X*[W(#!%;L&41U\GT]UF-NZ/C60J);CSJ^0SN 3]X.XT!RY!=Q0%
MN/Y&N^+R4WO^MWKY$<.5CZPFWF; H2-=&[Y)K^"W_GIPA=]B&B^,O?5$WI10
MKYS*"5D4BW52/G!>J0NC8%SYTG Y9O6Y\\JPP[!87K6!15SCN_Q%G7]EJ9G:
MJ\/EO#_!Z_TGJ836OY.)RGJM&I<>W>T 6M7SN]T-[XR5P*S\7==R==* L!9%
M^4JD@7=ZNZF=YWD[!T?BPI:)Q+;[NB#I6YPLL1].0QPHO:9P<XON:ZE<Z^^5
M@CS:MC9T!8*KUH:]@7*HU$!)(U-IL8\2Y9.Q\K8V0HCUGT =!0G5$ 3VHHAE
ME\%R2RY3[#:5&V&=JMDX]Y\<KU_9@AV#B[(5$\E7S"7#KO8WF(HP47;-NWZ(
MPMR H#6*J+L[#Z0Y%\.H$UWCQW[)MIL4S12NPH8#/0],=_@!%17[9JP\M?QE
M),DM3ZZ4OOQ/*BM',:Q(6?<VXQ97^I^\*_N^?#BI/C&XQIOUMEUP5D&E<:E9
M_1C.W.2;0 H6FS65F?-E9A6,'*^^H'\1>B)J"RI+SS8:Q('2?L;HF5;8 &7E
MT&&MH'Y#^Q5::&N>-A[(3N':-F@9XZV2F$NE;6V![J2=PM;"&-*VT6!M"#LH
MIQ+.D"Z:[K:T5!^W[?=(M,P,%)%Q2Z;I=T2Q<!+Z_(DV=7(ZV'[P*@#=(*#G
M"02B8R3J3\\F10S**4["6<SM_XQ#'$783S,4E0^Q*^':;]![V2DQ#DP[8!P\
M.CL/BMIZOUI;*;S6=O#"LMW!!/,#'DXN:JN?*4G:749$S_LC]S9/W<73C"?G
M[+L*LME6D2VR"*4XF"P(3</_:(R]S<=Z9D KN1S3;5/Y')FZWS.#=,V1\[9?
M*?GG69HQ1:ZR&(N'AV&#\+O:PV)U@[ '&(2]?#ZO.J%7S#A,1%SMDXS7[\$9
M1+J]J]4MK;/(P]C*(:6A:WV&-&;+911BRE#@*AQ3TF84+4P8JY<Q+8;RBK&\
M8C!WHO%.\4-ZB_V,BKB>?^ H2-E&D/*?5]6@UA.*@S"]9&>L@;U_KT$MI?;5
M2+XC7Y0DZ[+^V@[HC(.@@Z6QFRNXGY#'X$1@'(0HNH@31@>7KM9A(.]@+[EP
M3XAJ9[Y*( [I::*V_A333>I-&,_$J;_+0'+'R$CD?])9C[N=Q9H_08EIS<K8
MN5Q=<BR,;]TX[I*PM+8&3?.4:YAJ$[BBBR4W1"^?-C%GV;DSY"L65HD;1+?>
M:DGX"PB;OZ@U@B9C/!,EH;G8''IZI4JB;A>7M;5SAK<0.8R9NX?S?N"X?%#V
M *"CWODJH3K_?+VM+0>QXON <3#Q_UK;Z(KC]VLXFZ?))G@W.<DHE;\#5O34
M=+3E1^S>NF'"J'.NJ3+_[P:M^!'-5#GV&YKA:O:V%N(&@SP?N)LR[9RZ*NHG
M-H$9Z/!\(%4QZ+!KZI+$LSM,%UP@"I>3LD8]'\/C@WA\E*%K1_"@&(J3]")F
M?\2%+XN[!=E7=8K9'9-!R)^\5'"GK)98CN_E$Y3>LL2+<2I\34$QB>>S68;F
MOK@ZA?R*;(BELCS*9CS[R.:^RN+-YTN,$LSVR_SB#W.G+(92>#^+(3TQIE<.
M.@Q[%7"4_L!:;9,M!*S[_OAV>#W-M\=SY(N,R=H663\&--WL'&8RHC0>.D47
M9WQP1A#MG&):43CO1]NF76TPD[6U9AC3BYYHB7=.3]PF4F='D;>V8^92B%>%
M@[L&K?VA<-FHM1=<PSIP<!P2*BX?3#'=HD;MQ='UL^3*4:Y_TI#^838P3?&2
MK[QB'ER0J?)G]P^+;7J'<8&8B%=5$&:KP? %D^KR(G+2!MKC.Q2GDSNXN<@=
M*G!47"%5<M]J8J'(LFRM$I@Z)_:&+^A)*]9J$QM/^6KD6B///7\,-R68AAG*
MVKI_["F(!_</-] P222'>]BY*RG$K,+#[;3_[F!Q\M3M"CI'7?_%/>/Z$=.8
M.U6+\+%X]A6E^)9,X:?,BA$,![#IP%)^2:0U-R"8ULXKV;9?G+/'A%+RG3%R
M@I;L+^FJF<T6&N7^R%(FN8S(RQ9&6S5C$,2.;+9E/. I6YRG./%IN%0GMAIU
M'Q6F#3ARSNB[37OI/^4[S=ETBGWNM3(I:-AHF!&#:\39,+>S)C%=A=?T>BJX
M29*,ATQP1[OB,J'H-"H M7PX=\GXS"21\#@6G%S'9T\I.Q*R,)ES+G(F8-"T
M74<%G2$W$(!O;0'X.]O_&;-33F0>;[*[]& $]7U'!:$I.Q"&[[IUZ/#X&*9.
M<S%!VQ]OM]ML'"*'*8>D^][:+0'/4'2.L2K\I&PR#N'+J88$_Z';97V*>?$I
M'/#'Q&XH\3$.$O[O\CL#CPW>VZSS.%!HR@^$ST=[^GB^2Q;)<.(;OB*QGT>H
M*DO):+N. \)FW$  ?K*7Q[+<4CAAO'9;C@H>.?'@]=:JL>)WS,UH.)@\8LHN
M:=4[G/I&J^@X*K",> &QLUE3BW_Z(O)79-M<3[\E>2DB&#=%IU%AIN4#Q*NM
MF0'0+12$7,3\C5(<E/4M;R(4\U#^LW]GX5+X*.) ]*OD6@!*2,>SC /JWA@'
MUT9;FX;!VKB=$YJ6*0T&*&^U'R=>$A9 R;<U1AA(OII+8B#X:O-QRKW. 2CV
MMO:#/@\OXP*@)@., \$V/(&86K-:5,DO%:@BQ<P,QYU.H\5.R@>(5UMC1Z=X
MW= P]L,EBDI_@!EBM6ZCQ0S@!$2MK0G$X,"JD2**>8LW'"?)-=-U4"K<X,G\
M/"+?353&AB.. \1.F 3Q;6LAV1??=3A+9_C61WR&^$),0OBV#L8#7Y"(?3;S
M) B$!),[LG. )Q?QV9,_YP&WYX0:7OOV''4\.'?"*(BU$R::'0O3^C%(\4>N
MKA^9';GZ<<8!^QZL@4!;"R%1<,$SWWF%%&Y*+$)A6@$M&>>Y  VR!@)=,=18
MJX2/0OH;BC+^3T(90W%>)\5?_0,',ZPJ[/!16=B!C>N)@<5/^=!>.;:7#V[[
M(=133,-'4;2A4L.2QZ,8ET8WZV_+*Z*@[EC@R^.-><TR?EC-P^7Q*B^ILGD2
MF!/&_GB\D@WV-4S^T!9.'XX&9^H\-%M6-3?.T*@Y7T$"XD*7)Z7J9;'<ZN#X
MZA?8KC2=BETNR2U?^N+UA_69/ZI>MI*R# 0/804S[U:*5M=@N9VJU2F@@Q:]
MJ(8&W'Y'RY(<]=N=FEZ6"EX8?26D$1==;X.0/6U;Y;XB\2F.&!]TQ?[R'=%
M#8=I=UNO<#8%IA$_G=M)H/(PY;%[/3U&$;_\W<XQ7A_"@!(B"JR8]/P!%1%C
MV8 0#XHP>'P9\&%)XV@J87-@>M,];&'CI(+1-WZ#JAJB$&]1?5=8P95G&M!Z
M:-6B^:= C'CH>DOKHF;X3IUK72(^U&/PTB^M,3)A!-0 +1:)D1S8DSC(;:D-
M;7#K?O?O;>N&71G)MEF"\'/@;BRC6>U%-6*[ZDE\?J#N<F=P0[/E4]G*:-UP
M)7LPZY\9HNPR>L9G4KA:/JE<+6(Z[\_YA'_Q2.QMYO36DWJ56;U_Y]-Z@L.#
M%^;@A3EX80Y>F(,7YN"%.7AA#EZ8@Q?&OA>&J;U[^@:Z&'KL_IR&K [D]-G)
MJ[C"Z:9N"L^ 7S^M&\^,$#8>9RQNH':,#>4/VG!3Z@O;USQY^8:\9H6VY_U'
MVQ U49:;,&5@C[$> \GVBQ-$Z8HMK,E"O =H^H;7^]>&P9#\?;)R#J^8Q-;#
M7FK3!-\\2\%\P8BS)7YO\%;6^Z/Z6UD:BP272T5,U0G=>6/K8*DX6"H.EHJ#
MI>)@J3A8*@Z6"B?!.E@J;!?ZW[V-Z\()Y.U'8'K0TC^0/6&H(-)/[D/2F!\(
MHD^']^U<44,.#^8='LP[/)C7O=0;O^SF]L-NSCR8U_0=0O<>S*N1!RHRUF(A
M1_NHN/7K?)-7RJT]CG%XI=R9*_KAE7(U8T.%"O3W2KDEKW!WSY2[635IM&^Z
M6C^BFCP2:^WYG\,CL4X>5X='8LV9<\]V/-@CL>^>U2.Q[U1O:SF0KW8>/N'
M]$4.L-/]T=!7Y6[]\P!#$'#6/L)+"X_[CA'9YAQV[1 :R2N_8P2W 6O#F!U;
MHWJ,DC"Y75*,@NOX-T1#KGGS[4=1J=5TA.> K8X[YXQC&][SFL(FAVG><JQP
MR;AP[D*XCEI'E%?[S6DM2L/F@;[769JD* [87_7A$$;#C!/0%BR"VJTU):D2
M%MX<9)/>X\36G#,(4FL/OTQ\/UMD$=OY@[R "UFP4V'.K^Q<%-S Q24@TE'N
MT!.,;L.!Q@ET*R8AS*T]'M-33951(FK"$P1@Y1T96UD\? &2&(NDG7S]L657
MI) I$G?>J!)W-F/RG_)1/3:L5XQKNW1&A4]4O@A>@UFF8RB[V=*?ZD1ILD44
M79Q)[C""J*8@:41A)P5#$_FR]OY\QF1&T7(>^BB"HQH5S:VYOO2")R;T#V/G
MT<&1+\PJ=: KA+,#-Q\^@%$O6V)"^$#NJ8& <-(AU158 SBD$NS_/"./K\0C
M+7250U;\L$&L^,7]MUL)/,4?O]U:"(;4KW,B(;+7K:B91$^N88F>7-^_=5^D
M!96@Z<F"4&\FL%!O)H.7$V@AU()*\&9AS3E2%'#=O4L<XY@)4/'ZE;K?_=$'
M.W?#-HJH"2O.^2_+4B&-@=-T'!5R1KPXYX]L#-ES@*H51-:<BV?3*?;3M8V/
MD<U]93PU+XRS,)X53]226&%_,!]C5$ V9<O LSBL,6U-]_K=/V65EU]V36<;
M QF65VWIL9C-QA H(E-Q<(,H+Q:L,/V]59G^BE&\8AC;EKX*4ZL[BN($^8;&
M/GU/2[%^,L"J%";'JZV_J&V!+8=SQDYH"O!NB. ^4G2^D@O DSJ87MG)FFEQ
M/Z"(.8?.*74 M;JX;$TW.S'S)I(WPLK="/H^X'+2=-D/I(,FA4VB+*5H&OJ7
M.+B=W"H3P:1M+959,?LHB 'Q7>]VX#-461"2R2-BNKQ.T-*VMK+L&DL:IA[<
MJCJ6]0T-DP7ZS-7[R\L3I:AE30<W)+>5-$A\Y_9EU<-<^L>X"LHL/2G36*R[
M-$/2?-^Q-'\+ \H^'![A1I1"K3=D9\9(A O1#M\G7%,[=]3L5E<)Z1C/^6:A
M$)I#ILDJB4W452>O%"J1PYB-XUK1')P17B#V =#1]-PJH;I,W'I;!^X:RFQ;
M.<7.[7)"O_F*?1P^\HV<1U@7;EH8#+C/_9%L.=E3/73V3ATGSGFC!<&5QPO-
ML*IW&"50$!L&MW9;8>2W*,)WQ-B']$[E0^)C>2DY^)+ZYNC@2SKXD@Z^I(,O
MZ>!+<O?2=_ E-89T4%_2OF9WI[33AE;WX1Q)^WOLQN+>@*D?RK^QO]/.TFM\
M'3GM>@FKAV3-KCK)'2FNY]7+DUKLFF[W1Z/QFQIQ NXR]NJ4'OPD!S_)P4_B
MI,I\\),<_"0'/TEK$!YQG*F*N)0M[M]8*M?2TDZW3;>!QV-86[K4=JY,)'F_
M:T2'#.;67P ^F,X/IG/9)WDPG1],YP?3N>V[P,%T?C"='](PGG$:QGD6!\AG
M)-ZM]4[UV[90^]%$LZLY@,3>=6S[OKZAT<2WP]3#JEKGEO0X15]X'?)3'+'_
MUWHNH/;W1V-9Y!H60-&_;VM< !U&A"XF=$$R>DO85L?50=UZ5_9QS;*@\B!I
MV0!UI"/G_'9O1N,U@LD'Q=UUOMW_(U.*?)*DZ':BE'6]X?W;L6SL$.V0E-\>
M$I>>PUW\X) [..0.#KF#0^[@D.MIE]/4/K[C7AY>CS\('\,@4]4#!YJ.^W2"
M^0(_$JOP_!ZF<\%4F+_L>T?.F&:JV/AD#.H&&;Z>N!H#!59F\K!=8=P&C$X>
M;/U!/:@]^>3L>A(')]?7RNO83JOAS3U[?#!$PP9L\AGV#87U&7#V[TP\.)_.
M27 1/^(DY2NP_EN,^:N^BE<O]AIQ](=A%P*57-:'7!,0B:J]5=?'P@L;70!!
MC!ETXYSL'CI73\%!X1WT;.S!1C^T#=/\>S$WT*MLF6\ZMF5JOK+K[S&F_.R'
M3\&=)J,_UJ0LUX'H]K524QA4NUNMT? GD5QV$MFZ=9:T$:^KIT5#" ;=[_<I
MJ_?&PO,WT')5%]%[H\K5>V/O#9P&0?1OQU6?9IMN2/36+-837SR/E&Q*'5UA
M1=$@:?.Q0:)@ K0'=&QX0<F<O]=!PX=<PSHG3-OR0Q2=H"R1?@;"A*'I-AH@
MS)GIVKL !9YEU)^C!-_0T&=:VGF&(RCNK-YR5&('Z1_&4=!@:Y+?*-?GW@W3
MOMG/:*;($C$>8C00MF-L&(-6 VPW-"N?CUXW&AL^-=*'N:HU0. +4PHI6T,7
M3'VGC%;)VCE>,;:5-00;##(V!!NS!B'\WA;"QUG">$R2$[)X*%X68^=M$@;%
MZV!"&/GK?4<PQ$U&&1O&S7F#0/Y@"^0;M!*[S!V9^.Q,H+CD"2>?*4D4NZNN
MY]C -.,' O"C0U\INY>061S^!P<7 >,HG(;\CC)AG*1)P5O ;O65HJ?L;]D"
M!Y<H#AI]R7O--+8%T@__T(+Z9"W1.B7^'Q>,3!R<9C2,9^S "DEP.V=G5<Y4
M(N!1; W&0XQM"31D#+0&6#/7Y)3F'(@;'&- _$X!)M1E=."I&0'!ZCQ'#2_"
M;'$2$;:=S,2*4EY%\W0O19_1X&#("0A$QS8;_HRQS^@WLPCP+HH>HP)!RP<(
M05MC#I@GFV843X) R A%57O>9,&-K  2^HZC L24'1 7:X:8FM9\0TF0B=>E
M<S6HP05BM^MH(&S&$ BB-5M.Z=!@#'#]5?OT@[S]V.!2<0%B9,T:D[]9?LDN
MHN>,?[G]5FD+->@^-@0;, 4"6K&\V'K*XPS1F"E#2:F/'J,D]-FU\32,,B85
MQ:L>'U2O>I3#>FQ<3PS\DR>&]MCETRL&K[SQL9%#][SRV><D8B)/<IA,RJU]
MK'%7&>:___3QS=&'OWKY<.Y47F.[2K;(Q'(6-79/R&+)B.;1+X]XLV!K2UNZ
MRS8<R=KI84*GIB!;LU&<J</6%N[Z6=18ALZ78YM\1S2X8Q.H<\!WFED+LFR%
M 5&Q N)DU?S#S@ <<.889RB7*SMR9V+!)\>K39M"GQ5,;3B+@YL(Q<IP]*K!
MI?/9["21RY&5&)AZDJY+F>;C7T5.!KA:7FF#1LO^,V.J/J;1ZBO;;I7ALI*6
MEO+<>_V\B9;CK@\3J$9@'&<HXO<$=<FZ6KL>OBFG8)$SW+G7H /_'5LVF]PI
M+A02<S&HM3!-MS%K9482<:C,S@Z9N@,2:&Y'3S*3M2P8$>#7)<6G"V!<5CTZ
M \_1\CIW%*,DHROA=F0D+TBLJ[(#=KFW5+I/_;&0!L2#WY?=ZZEPS6NN Z+-
M_3L["'1D\MEA!$+#C8^E$N%"L2)&3-%IY'#I.'/.UK-%\&\HRG!)[PE)TMQ-
M8@@DT/LY(:IBT3D%L4YY$R"?'6Q*D'ZQY=_CYVV8NR!YW2"FBH7L0AK[AF\-
M?=IU?E7&$PZ\K1'=\7]Q"+=(J^%97Z.J/G:^L!I%&N\5U-X9/Y4>EIW/3"T!
M.[XG3:F#K]SB Q?SJ/S9FC5#(U4B(W88S<)$MN!EJ22X;#!\=8ZZO(B<M(&L
M"AV*TTF+@;G(A[0%:*3^A8ELD2U4<M]J,K2C 5BK!*;.B;UA;3:Z]7&,>,D0
MN*R@O*G[^[&21\O%BTN2OL7)$OOA-,2!JMB/HKF%^GY*N1(3HMW8T;L"P=7=
M?F^@!O4OG^,'FB&ZNOO.*%Z=A;-Y>C<G6<(N3G?SD$>9LNYJQW.3(2P<%/H/
M@K3GI>MM#4")S4JRV?SN.UE3LR%0"8Y!S\']T4U!,>4!/..MV9\N23R[PW11
MUH+9F"; I)WU>:ON>6\I +W%]=B $0.;?G\V*2&1!/L_S\CC*^P'N57JYG%Y
M]H3]C%N(3MB./B.4<7L=1ZNNXK_!>2?!O[(B)K__^3:5OON=;!U#(F8YA.-U
M%-1I+;;L68<P*233G>.QZ[BR9XT(*!5UT8"A3XT[B@)V-%;YW^RJ!3'\?QZ8
M--AO_C]02P,$%     @ T:,&7=][^QB+?P  /0$' !4   !T9VQS+3(P,C8P
M-C,P7VQA8BYX;6SDO7MS[#:2)_K_C=CO@.O9F'5'2+:/W=//F=THO8ZUJZ.J
M4<GV]CHV'!2)*K$/BZP&24G5G_X"X)MXLAY ZMR)F?%1,3/Y _$#D  2B7__
M'V^;!+U@DL=9^A]???CFNZ\03L,LBM/U?WSUT_)\MKR\O?T*Y4601D&2I?@_
MODJSK_['?_\O_P^B__/O_^_Y.;J)<1+]!5UEX?EMNLK^BNZ##?X+^HA33((B
M(W]%/P=)R7[);N($$W29;;8)+C!]4+WX+^@/W_Q;@,[/+<S^C-,H(S\]W+9F
MGXMBF__EVV]?7U^_2;.7X#4CG_-OPFQC9W!9!$69M]:^>_NN_I]*_=^3./W\
M%_;_GH(<(_JYTOPO;WG\'U^Q]]:O??WAFXRLO_W^N^\^?/N_/]TMPV>\"<[C
ME'VV$'_5:#$K,KT/?_[SG[_E3QM10?+MB23-.W[XMH'36J9/8XU\#TD>_R7G
M\.ZR,"AXK1M?@Y02[*_S1NR<_73^X?OS'SY\\Y9'7S4?GW]!DB7X :\0+^9?
MBMV6,BF/&1&^JG][)G@E!Y,0\BW3_S;%ZZ# $7O1G]F+/OR!O>A?ZI_O@B><
M?(68).6'LEQ_'MBJE;YU#7:!29Q%U^E^J,?:GN#3MD.* PK0UW=>A,>L")*]
MP/<UG<.^Q_M]\4[/_9>FW3S>[TOW-$\"NQ A3_Z\\N^:L!_OZ+\&$/%;00<P
M'#4@F0E-#\S?P >&VG9K/0L'=A/6FV=$+#L;&;G-59 _<<-E?KX.@BU]P?=_
M^!8G1=[\<LY^X1^A_N&W!YSPQDI;Z>Z1!&D>A&S(R"]V_2>SMSAO7LQ+_1]?
M[6/@VW$1F:D9:<H9D-#PL6J);\.,#G7;XCRIJJ527Y%LLQ^N^C-G^VC_ECRU
M"*J*HB 511V($9QG)0GQ))[TR[MW1=20-PDUP9Q G)[_M/SJO]=BB/J!Z#Y+
M2?TG4XMQCGYEJO_WW[_MWNV=L)_PY@D3B^_1"/HBX!"HBFB5%$A"#:"IB,,E
MT:^5K'^F=!PVDT4AZY(O6KA]RD@%P;!&AVY,G%$O<SSN%.LDYX3X[@\_?,=)
M\?CQ;OG;-1V:21HDEV5>9!OJ>$@YH1=U00D;L(P1.CGOA+  -^9#(XU:<3B]
M"5M$P!N<%M?_*.-BQU8XLI3^F6M\(X..R][%"GZ_E]$J>"?7%)0"R[@HZF2A
MN#84T29+ET46?M8.5A(YEU12PNS31Q "0QD5LC%-*CG$!>%T0X\$!WE)=AQ6
M!5'+%8V\2\X88?>YHQ0&PR$3PC&7&OF*36>HYA885LVB*&:3Q2!9!'%TFUX&
MV[@($BVS##HNV64%O\\PK0(8EMF@'#.MTT%,Z3Q.4:UV:N?Z#J^#Y 'GF+Q@
MC6,M%7/F5&M M@ZU1,8[)0S QBS@DJ@1A=///. BB%,<70<DC=.UG"8F8;>+
M.#K PX4<F:1WXEC!$Q=T*F'42,-AT"P,RTW)UPSFQ3,FS(LG^!FG>?R";].0
MSAKUHY:]OM,1;&JQ!J.9K3(8-DY%+(QR\\M;-"L*$C^51?"48%1D; F)SN;@
M4/6BS&DCRO-92"><.1^5-6L%2FF7-#1 [I-.(0J&8GI\8T(UTLPS?XI3'C9Q
MI&4!A;MTF:5%O$X"BC#/<=&#>7=WJ7:?K-2<N5,3"M&Z5Q8ZWDDT$:BX=-!H
M(JZ*>KJ(*I^XC\I)T>N?Z%]=WT3_^.V!0L62GFCTS 6)I' 84P8/O--!AF9<
MYVPE,LZ+.*2.]R<^V^?KDB==6S14]*<XC3?E1MJ92)Z[JG IK*;2!P]!5+P,
MT;CR:QF_[?I3\*:O[N%S9]4M@]56=_\AC.J6(!*JNY+QW(WCO-G\4'7F8PEG
M7;H<6MNQ#Q^#J'8Y)G%B_!*S<&:4K=""Q!E!592CSUY^&>(TH" 6A(++RCS9
M/>!M1NC42MD3F%5<,<46?$,=DSP(+EF"').K$T>-O.\>IF+[?,6Y7E'] 8?,
ML8U7<15</HO^7N8%:S=*NNUIQUUO=4 QNSYM#R,@V'H(<MO^\0R-#9ZASB2<
M)9LVG*!9#UCB]<8VR$.NXR7(0P=?&N0A4_#.SBDHA>E8+0(EMJ/JT=E298UL
MMEX3%@%/V\(%7F4$\X70^9:=J(K3=2UEV" YR*;;?90C%'^XW7* 03#,/D8I
MQ#ZXL8EJ<=K7=F;1$[>+N&'46FYDX?3%-T%,^(F]B]U='#S%"8OOXJMQZK[8
MH..2\5;P^XS6*H!AK U*83>Z$41<\O3KZB0("[[PJHE#D,LY73E7P1PLE8^%
MO#/!A$RV&,Y$JZ7PXVTE&^J_(5VL"T;1"#MG@A*P0 =!$A8G5/"4Q.@I^)WP
M+D@6E6$Q)TM,7N)0M4DB%W,U7=6!;&:C,AGO)#$ $Y=#N"@_CE9+GW;DN(G?
M<$1GK2%NF*GI.33"SGH.(^"VYU!*>B>%%;PQ-;@\X@JHU3CUP%+S<1DDNA%%
M)N6,$&J(+1-$$1@44.)2=0M<TN]PT:Y+?,39F@3;9[;YJQ@S-++.UMI-<-M%
M=I6@=ZK8H!L3IB]VBM6@'(??K+,7^O5+VA/M*L+4?W1\J7_X[7(^*E+_@0LF
MB$!8M7>_>J]C 8K@-\[OYI\N;F<>:Y'"D(-F#US68@>D7XL_+<'48@ME7(L_
MW=\^7E^AY>/L\7IYHB&;KW&IQ^K!8V>#M 14.SKWGGFO006@<3U6ZX@G]KT>
M<!Y'M,N/%6>25$+.*E4)L*U:00)&!:M@B:O*K=SI5W V&TQ";5V+,@[7:^3P
M>LLT0P$8%:U )3OU6HD!\:V;8 J37SV4<^Y3RV *_G1?R#LK3,B$'=5:!$*L
MTTU&<!CDZI 3E:#KN"8YT'$TTU *!C-TT(3UF%H(T.9AG,8%OHM?<'2;%A1K
M_)3@:@/B8O<I^'M&C%N)4RPXW5B<7K3!-J.]NG<B[H]YS-!.K=J&.D.5S7-N
M].RH&Y-'R/$01)BEKM6?CQ7%W&9TD(,<)G(8RH AE *8F+:!BO$DPB=?75YF
MJ^(U('B61G<Q[7MSW2*S1MB9&VP$W/K#2DGO=+"")_A!M3S?F&HT3DV/^ZR@
M;YJO9B&K%);H.:\7PJ_HQ&R=YA0][>-PDN"P*(.$/MQB5=*[HUAT1K3C%+UE
MXV'F8%#V*&40D_$QHRQRMV<6-=LMM6%.^KYIU-AV%==Q$82?DVQMCND8"3J/
MYY "%6(Y!E(PV*6#IHSAJ(5!S0 H@^,@N4WS@I2*8U)&:<>>O0[RR(N7B7HG
MD!T^<3^_ED:=^&EC/9;E=IO$F%1OQK036Y- ?G320MZ=TV4!N_.[-,+>B6*+
M4/"^:A54ZZ!:"4['<TEP%!<W0<A#7C5]CDS0:1Y')=!!(D=!RCMWC-"$48H+
MHD;RQ%T+3N.,+'%8TK<.(6KZ%[.2NT[&M@!=3V/2\$Z923#%LT1,#]6*2& 3
ME)[G"C\55MZ.3-!ESZ,&VN]Y1"GO-#)"&U.'"1[?J3G\G&-%Y?D+)FF\?BYJ
M!RQ=/P0%7F8K>=#$9&VG9Q^G%6EP"M).%0S[IN$5>[.J&VO54:N/F 'T]7)^
M\_ [2-T:B5^"@F>&:QK20YQ_UG9P.A6W79T9_+#34\N#(: %2+$C;%0 =H=L
M08M^HX*WG]=@J^W]5,(N6:4'W.>37!(,D[3P))MX7+CJIICXJ1<=V<9VO$XO
M2T)P&N[NL_0*)Y3#9$>?O 8DTIT0L=9U=V!D8G&Z\R.6BMYYM0]:630#54>-
M/KL,"S464&/BU-0;MPR+,TE&%6=$LP3?\LL@#X-6=B M.BUG1Y;:\*[YZB)(
MV'+9\AGCHKD75N) V:NY6XZP+T2W(&'6@<$I>Z"R?)-5ALGY"M6ZB"NC1ONT
MZUQ5XF;>1U;'P V!]C)1MT'W:K## 'Q1#@99].#D@?FU>)V'%LR<;A:&I,21
MZ9"^6=QQDG8MZ%%.=JFL=R99 A0RKE?B)SFK/]4#FJ71(8[Y<>SZ]Z7V^ QF
MAVN"4>]4/G9))KEN+!!&-E,XCWS-%*[?MBP6[1Y39^(*KS!ANQQ93O]J%_C,
MC6*"$><M8'(!!;I;6X#%[:FPE42N#2%JB05Z-;80,\9^Z%:"3^(I3#MDNYB-
MODG_@<M#MAV0_B';Q<P[200H0K*$V?WLTW$/2A_QDOGIM\J#N49^XKWQ(":<
M]ACU%WSW=$X[PYPE)1UL5W%XAZ/E;*D>O!2"S@8H+=!V$))*>6>%$9HP$VAD
M$15&5/KTJUAE%&>SER M8BT-%((.5ZHT0'MK4Q(I&#3001/7GY@LJH1=T&!!
MXGP3?&0'M;0W),GE'.9@4L/L96$2A6!00(-,S,3$1!&7/>JM1@H"_!Q'[(1R
M&L5IIJY^F92SRE=#;*M>%(%1\4I<XVJO!%$E>?*^GV7Y>LSX6F;/;]$F]33K
MN!L1+.%W@X-! 097+%$*0P9/V59D=>[IOE?I8#GQIDRC(*1.ZR,.TXS?SJ;9
MO%<+N]NM-P'NMN=5DC#H8H(G;, W\JA3\)N-Y#$N$CQ?W=(^[R6.2F66/X6<
MJZP36IA-T@FID'>BF) )1[.9+%^$763UQ8JG32M^/:<CWN5\KCEX.!9Q=^10
M#JX[;#A\[KVR-:"$HQO7<U[+5.[TOD9:!)\"$@=7.*'_U<\UU<(.O0L#X)Y;
MH9"$0043/-&1H/*(*[# +/:OH\Y ]\Q-](RCDG5@U_\H^9&2XCF+;M,77-UR
M)/Z*>0H*56*K@\RYRW-T>*&[;$C[V_+.XR,50-RY:93/>!Z2$Q]=HX*;&=G0
M+[+,DI*-JOJU%H."PY4W"^"]%3B-M'<F64,45^2H#JJ44*OE_[[I^6N*2?X<
M;Q4]W>BYJZY+"JOIBP8/O5-"A4@(^6ID3MM-_)]L18(PRXM@.5/W#3(I9QV"
M&F+;"X@BWNM9CVM<VYT@=7X A?:QH)='^@+-]NY(QFD0GPS>('*O+^"=$CI4
MPLX<DT%,Z+3M_S_+@!28)#L6%Z7N *1BSGH #<BV"Y#(>*]P [!QG;>259#:
MB:?(LS0M@^0BR&/-VJE$R-U.O I@MPL_EH!1XRI80AOG<H@+GGS%'#\12J_=
MXRN=?^RNV5GAQ^>LS(,T>GR.6?0(5==T -/TW:VK[U&L;JE]@C(,9NV!6%B0
MKTV@[_]TABA/?C@U\RBDK%P_/[YF+=0.O9IP5FK.>#:A$"V]+'1@L,H>J+!R
M7VDR'OWIM&&F$8XKAY7^H_-3Z1^_768OF,R><A[+/2J>Y+D+RBAA,6X(#[V3
M0(5(3!#XPJX'::1<5_15%O), \PIEI1@^-A5-<M -;7<?P:BDB6 A-P.M0B?
M>CBNX!E]<<1>?I,$:PG\T7-752R%U=3QX"&(2I8A$CS/1@8Q(5_5?(7SD,1;
MMK2I*\= S'FE2T *==^3@44!$9B:"3U93QW[ U[';&AA$-HCT9IN3"'ONNO7
MPAZ/!5)A$*2Q0:@<+?I*J-7RQ*-J7OV MQG1T6<HYIHU,I!CLO1E0'%$ DQ)
MC7J5HQ+VQ(AN#<Y$"D'2-2\44,?4&(F!8H<<FY(@O65/GQSA1Z%X])F1)**H
M\^F& JPP]1C)@>*) IQZ2M+*^V7*\ADGR66VV0:IN4.1";MFBQKPF"^B)"C&
M*.$I.<,U4*T"AS;7+\P[IVZ296%[\C[)(\#6\:<5!DNA,4)+%G$UQ/0\,6F!
M29Q%U,TF)@X)DJ[9HX ZYLU(#!1CY-B47*G$$9?W3Y+K-+*B2"OGAR CF')Z
MU$( R3%$9J(&E?9)C)LX#X.DPG)#?QL']AAD71-$"7=,$D$0%%%4Z)1DJ10:
MSG 5KX3Y&PZ('5UZDG[((D"54Z45 TB4,38339B\%Y+420D[U.H11RWJ;%/6
M +;=GU7(@2"* 9RP:UMGC>P3Q=,(=)T6<;&[B1-\7TKB/N0BKKBA M=P8OP<
M!!<4H,8<J,00DT.5H)>:;W8)TH*=?U$69RSFE@%RD$,6#&4 ,4$*3,&&3I8?
M1_+"B$O,<C FMVF$W_X7WBG+)<BYY80"YI 4(R% K) C4]"B%D9<&E%Q+\18
MD'@3D-TR#@U#A2CHEAHJH$-NC*4 D4,!3<&.6AHM;R]]CB2/P=MM1(D:K^(J
M/[J!)4IYMV0QP!YR1B$,B#IZA H&424TU/))I-LTS,@VZX4[7%:)."^S2.VA
M&+3<DLJJ"$-J:54 $<P&IX)F ]6S*B8%9035!A"SX(5QLRBB'RJO_W,7I_B#
MLOQ26;?LTL =<DHB"(A):G0*_M229\T_$--!\Q0*:;Z?4-3O_9/F>UO2? ^:
M--_O0YK'UPP(:7Z84-0?_)/F!UO2_ ":-#_L11IVDLLG;2[I/^?D,7N5!6<K
M);U01H0J)4PG!H\N C8369@"\V>8BD^:<,=J3A8D>XG34.TRJ\2]$$8!6LJ:
MD2P\ZL@!FOC3.L2-GM>^IG+*C8VD$?/3RPQ!RKN8^A8'<"09 C-V+I6T3THL
M6#*4Y/_$6^U$7"[LA1Y2P%*2#"3A444&ST282@=1)1\3ZYJN;$-#>I1L]-S=
M$6 )K.X(<.\A"!+($(E'@*O5DTK(=34SCA(<*'J$X6-GE2P!U=9Q[QF,*A8!
M"37,VS65\=&0V6VGR>(Y2]4! J*(JYI6@6MJ>_P<1(TK0(UKG8LA+N=I-?ZM
MP&DN[[Y[SYR-[&,X[4#>/ !1NV,TPC#=/'=<F[^0N*!OOLPVFS*M=WED<8,*
M.5>UK(79U+A4"$3MZY"-F5#+HJ&P8UHLLR0.XX)=<4@GGR0.9*62";DBA!I@
MPP91 @05E+"$Q+*M(&HD'9-@03 C(:85P0\!XC3"9+Y:24=[G; K4I@!-^10
M2X(@B1&>>"L4/@][&JA205S'+VUN\[S$9!)Y)"J>**0$KR"2( ^13BJ01E)5
MBCZYM<1A2<?'W8?OG_A=)+(.5A!Q-B8IP+4CTN@Y"&XH0,EO?LE6Z,/W7S_]
M#C5:CJO_/GLD042'Q.5N\Y0EBNQ34BE7)-! ;'@@$0%!!36N,1ON,U2+HDK6
M1W:J 5A)<4;/71% "JNI^L%#$)4N0R0T_D%=>^KRK]_"9PH**PXDR,5<=_TR
MD./NOR\#@@(:8,*DI!9%C:R/ PG=D+4V.P%K;T[ VN $K"$Z 6M;)V#MS0EH
M7ENE"*']TOPIB=>!(CFA5MHU*320Q_R0B(*BBAJ?LL]H55"GXSJC)4]Q=INN
M,K+A[[^A_Y"44B'G+*>E#F:;U%(F!((C.F2*U/H]8<2D7?.BC.("1Q68FS@-
MTC .DC8]HFQ%W*SBC"V6X%OB&.1A<,@.I$"G2JW)9=@J=JDN72^E5P$8O^ D
M^5]I]IHN<9!G*8ZJM1393I%>WFW$C 'V,&A&(0R"3C8(%:$S3.G\,]-"C5J]
M$N:%23]G29D6 >%GR8FL9U+(N66. N:0,2,A0$R1(U,PI!5&E;2? ]I5]HC6
MR6(=GC0%C%[<\7%M+>C1J6VI+"#.: &JSG#7.3\ZW[C2\G3$LL#LOHCX!5\%
M15!C4Y97)>[Z4*4.]/@TI4P6$(6T )7G)UL=EBHF:#CE+64,N:2NUCK31(F/
MI-PGCA$@BKEC6A% ])#ATF20(:B1]<*%Y29(DHLRCU.<JP>BD91;+D@A#KDP
M$ '$!1DN!1>X*&IDO7#A>H/)F@YO'TGV6CS7^5F595-(N^6&%O*0(U)10%S1
MX5-PIE%!E4Z34M</>=ZZA.)5ED5U226BCFFC!#OBC" 'B3 J< );$ARR]9;[
MK$"/&?HIQZAXQHB'LT;T]UXF^,J.KYM&PI =B*B\\C0*B(Q".F'GMXXH 0MW
MCPB2((ADA*>^AZ350(V*8];,*8=)?Q['0=P6>*,\[6!6<<4@6_ -CTSR(-AD
M"7+,*:XVG%QS1<0T?68SZB>W5[MX R''GK$$X,@Q[DF X(@2ELHM[M\5X"=W
M7OF4Q.%-D@7J59:!C..,>2*\4;*\3@ 0 T14JA1Y7!!Q22_U?Q&DGTFY+<+=
M@F0AQBS**F][*]/ZFZ6V6\Y,*M*035:J@'@V!:^"@9T)U+-QUANQ?"[FL:!Q
MELTM"S\OGP/Z >=ED;,1E )3KX)KE1QO+U@48+3)H-$ 1#T+F*H-!ZZ)N.H9
MJI113]O3_"SOL@#BZ&+W@%>8L','C_BMN* O^JR985CHNIZ]61=G/)DS*H(@
MX52TJJE>COH&T!.+$:M-H%^9$<2MN+Z_O&HJ=W'.>N!%0'X.DA(O,.&M1=DF
ME?)N^SP#[&%WIQ &03(;A(I.KE8Z0U0-<3VV^E3U=D?ETBK(GWAQROQ\'03;
MBE X*?+FEXY9]0^_+<-G')4)GJ^N\"I.:</!*?U'L: ER:_B/$RRO*0?\C%X
M$F*;][3A@H$'%8^Q<B\#WIEZ"&JA6ZPT4:V*F"[M!YG&<;O ?6@K%JLKU1U]
MPE94QKM\$W5=TG12<?KTM%($0\LI:*WHV*FC7YD!OI*6^Z?G+,]QD<^>V#T9
MX7C.K!)R23@YP#ZSAA)@*"2%)<3=+I?7CTL@+*CGS%9D$&3=<T(!5Z3&2! 8
M0^3H5)=<!5SG+]X9<QGDS[,T8O^Y_D<9OP0)FY?,BLN D!WU(;GWJ"BWI:Y+
M1DTJ3I]A5HI@&#<%K<! JH2"-$(A^P?NU+US<?F<D>(1D\UM^H+S0G;R1"_J
MU,_7@!VX\Q(Y,#S2@!O3IB?AG2CU#GG^@$-,V4OG!_>XD&\7V*DX'?0LP _&
M/HT\&")9@)2=JL<HJ!41:37/4(J/N^"_#\?J'?<&5&YDF$[!);_,P/OL4DN#
MX981HC!Q*S%BWX1R*N$+J]N %#'VWV^Q/C2E9G>T"(K"#D5<\D8&KL^4_G,P
MW)" D@U<3 0" 2ZSE$\.?HF+Y\LR+[(-)GSV8.Q=K#2=>MKV11GXV68U,.2R
MQRIFGZXTZVD>^M=_^=/W'S[\%87U[(_O;A_Y]/_>@]Q@^JKK@T>"S@<U*5!A
M,!M(@>&2$IH\9"\<+!-XYXD-13RRPT@,?YPHLB)([FP7CU2N,C,"DQ/WM'8F
M+#?*Q-TS10U:)(TH"Z9/,0 44Z>GZ_."3O;!+#XN2+;%I-BQG95BED9L+6O+
MEAC4_K%>Q265;,#WZ:23!T,I"Y!BFM1*Y0QMF1)?6L2-&HRYO'1UHFLW4]8T
M^EK>5XW$(A@7CCH5,)RSPRGKS5#5FXE+2-X9=\7BN B.6'S7!C\&;W5?K>S7
M= J.XP(,P$?!  II,.PR0I1L^W,%%',-5 1OP%<.C#V9K3*4]0-]OV:G"8:
MD^#:+B2D67H>GB T?K]5S8)"CFFWVS:MZ[<P*5DX]<<LBU[C1+U\9Z/J=A74
MOC##U5&S'AA*3@ KKJ8VJE#FH0:*^:&1CBK@Z&"H\N:Q]YIF+I]=>(!4TF7]
M:Z#VJ2 1 \,*-38AZIS.]HH=VN#B.6-N4R/OG3"]15>CCZ20];3(K?> I()@
MB*-#)U_M3D8K4]Z)8\D9OW2Q88I7DEBN?1M)4BU_ R6)MF@^"*&F <3*UU8Y
MD(J^BX.G.(E9",DLC?C1T><LB3#)JY'/L/-AK^[40YE8J(';8JD+9DB:"%A8
M:[R=7=S>W3[>7B_1[/X*+7^</5S_.+^[NGY8\AGY'_^*KO_SI]O'OT'BJMTQ
M )V")SY:' A02T/DW+2C 4FGZ'^+[@H_&2*3!A)NEZH%:,.UZ2=P$44B)N&V
M$!:17;DY$16N O6'44/L!IK.&6)2WEG2;.$L@AW;?J%]+/V%E#@2&X%A$\C*
M@H^-MPE%DVW"6:B#8>ETS(;8[FUEB),YJ$PA_+;%:0Y@9X5/0:UYJI1VOE!@
MQS^%*!BNZ?'I@^-Z Z5W%EW%+W&$TZAI-(8Q4R7M=/S40QZ,I7)1,"S2XQ-V
M>!OIIF/RSA[9'F'3*'9Z*MFI^M[9517&M*\[U@/#N E@E7NZ3?^U QL?;CTL
M^AX1[09#S^.@<4G,WK\:! 1#&@=[1; .#3;H>.*179"P5@%,;V6#4ATN#&Q!
M8A3/U2^;?7C=6,MKC)V\"-I NZ&*4Z*]8/*4Y5C7D=G!?;^1=^U(OU?HG50;
MC(<V/?A.H@JFYYN&=X*K!BD"KPG58,N+1D:JA'V$Q\@!RR)DAI)@Z*6%IQY1
M02S:2IV"*0X$ -?,VB4#Z^A/CGX ZNV;2^J-+@:2@*6&GA" :# Y) )*$,2T
ML(=W$.@P.;0!<"C#@M3S 5XH72(ZJ:3;LZ!*J,,CH((8&.:HL8D'/IMY6L[3
MYY^A__K=-]]]]]T'EF<'O3#-,_3AC/["_J\60D%9/&<D_B>.SE#[8\SN$8_X
MOF#6Y>!'08'^9YEB],-W9XC1XHQ+7.$0LPN+T \?^,__AJB)+>8WOR;'O<!F
MOWEB>R>!-FFB(.9VYB<'.9SB#67 4%0!3-@D))1$[#9R'3TK<JH(^OL_G/WP
MIS^????[/PR96A'Q][\_^^$/OS_[XX?VJ8Z\?V4ZK<D/2I-__.&/9W_\7F52
M(+]WOC\2'.0EV1D9+Q-TR7DUT#[K12DWO/]SQ?L4KUFJ,IUGJ$0H1E]4@BAG
MDH<2I5@G.:_][_[PPW>< 8\?[Y:_W5' R0/.,7D1G'^9@(L:5P-C-2T^]=ZS
M*2$)2P=,!C5"WMO^+(KXI:9!L@CBZ#:]#+8QG92HXHE4TD[CN/20!S%;<E'O
M;+'#)Z0F;Z7I !A'YW&*PDK!.XT><!&P%/O7 4G9Q5^S,"PW)<_9R)+OA[%J
M_FBCZ))<]@7I\\RL!89RUE#'[&L4$:XUO9.N!YV'D[$+, E^QFE.YQ'5AM5=
MEK-MJOGJ,7A3M<&I5AS'K.Y3Q%'<ZA038(BZ'VZAS^RLH*R*.>S;05\GU,;O
MO%-97.VA):R.\2^J"*)949#XJ2Q8E-MCQM::V8Y6EE 4Z]NTP/3SVZ_1[6?<
M[WK>(1]$O_:WCV582\U'+9-XD(%.8VOCS<(BK@Z*!SVKJ,A0SRB*:ZO>VY;I
MR)AY^5ZA!NF0GV%G1*H#B\.6:(U[*'P5)E=RUCL=EP4=C%A2A?GJ)DZ#-(RI
M]Y_EW+,W;K;8J+KMINT+,^R$S7I@/)$)8(6^LU%E1[U:9=1HHU\;??_WC@VW
M#18!F1../M)=&CI5V=]6CJE ZMT=E288?DZ":]X#:A?7@5&RNN)YUB[N6WT-
M4<D?!54%4%-OK &4<@J89JH)&S8@*7?+MW<F?(E&P3?5AL!--*ND05-L -&:
M7M7V'$AJ]>ZKG_ 9!EJ^228I@HEI/170=!-Q6G.NM^GKG7B]W?:);IV5IJ>H
MARD.G84:&"+:8S6&2\#QY'J%LG3CM!J>*&?CP&G$(5+,TG43J 7/<Q,*I77;
ME-)>J:5VV!2B<"FE==54= +BJ0F%,;MI>A6OI#(X:#IYN/0RNV8JCD'RS![P
M"TY+?$,K4)I<7K\<;*WM-H!B4I&&4116JF!(.0VOP,\M)D'!=LI(90? D6Q#
MB=K4\BSC)_W?2!U5L9<E0#S5%74"9V5FW@M_-=CEFW"9P&COA+[,\F*^8GGO
M^:8B)B]QB/-EEJC]0K6"VU'<!'PXAJNDH84^&Y&*![=SOGF6!PD /GTD69XO
M2+92!C0.))Q>5"%"&]Q5T3V&M>\O A.NK6 2:,M%O#.@';:OZ[2'!B=-(^\T
MT: )]B#5H$H8S-!E0JAVMIILE?Z=K27F@5)U"52Q!R,AI\$=4H"#,(Z!!+2Q
M1HI.B-"HA!I>>&?%1YQ2JB8L56NTB=.8T9J=B]33Q*CE="2R*\)@=-*K0&.6
M'5QA'*NTJN2Y STP[!/Z5=O^U_-H9C6*^6#1H\G]4:$T3;&.E759<2B0A]RW
MV+IP^U$I#++.C@J:X+:G!E6"WCT;&W3R),J=;U-E6X/3B2AIHY7TTI'(*:,1
M@S6)FL 9:&RYS]*V5_L8Q&G.P"L''J6T2]88(/>9HQ#UWMW8X1N3ATJ?9R,"
M'>5B>,4H5$7^?^+7$5;,EO6:,BEG(X\:8COFB"+>JU^/2W\M9'5D#DKW<9,1
M'*_3*LMRN'LD09H'(0NN9W1F;+[ *RJCWJJ89,%E-[-'T?I=SP1U[WS<'_.8
MJ[6%.J5VN$-%9R-':];%G:BS:H[1U8X\G1PV:7"K1>_Z^(<00C!5V5G7-KE
M;8]GK0EE8K\7:LF-VER_F9OQD9'/]J,F2C2L=S-6C2GO_6?G,#;[@'%:4F"U
MGT@;3=7BV@30.+]^HVTJJ\,K;@N\R2<=1S[I&]W>,'_R3S>\F/YDKX,UF3E]
M0<66R].4/W&S0+*5MZ6KNZ,+G&+UMJ-2VGV#4$(6R2R(0AD/[& J:$3YPW8K
M7^(<PLTO][@PKL.,9)S.I67P!C/HO@"LCDH&39@R4Q< R%2I2?G3'".X"/(X
M5!1-(>N2&5JX?89(!<%,:73HQF3ASYI+,^AH5\6L@B/.59R4A3*T7BGMDSPC
MR#KZU*)@"33$)UZ)QY_"(]$O=%K^3)'-7J@7M\;W)4N".E\)X=RZ7FFB#9>$
MVZMX?1I.,@"&G/N@EO=ZK[4E%%2F6**N399"#-M7%+IN>K9'1B9; 4!G4Q$M
M"*TR 9W2!MRJ?O@=T5J28:_)KF<(<K32='P(RK8HH[-0)C4P-+7'JKA[>9 '
ML7(7_ =%ZE(]JC<'9FG$_TKX\M L^GN9%RSKDB'UYZE>YOP&\9-],.$"\J._
M"4Q[.FGQ[':I*B,H:*WX7X74?97+('^^2;+7'W&TQLW^W&Q58/* PR3(\W@5
MAT'SE?9JA=-? :7M[?MQ;%O<5/OOHIWM62CAS- S_8N-:6@5Q'4*#+;K%J<O
MN&Y8U!T+XH3G+5UEA)\NJG?J2/Q2Q>2&]9DXV(VPZ6BD>5X7@>8FP(.M0FEJ
M$SZ!;>NR, EK*?HXA;'W%+VW"8W[>\34V4=_"Y!)T+&2:1_Y%;#:U&D*)P_L
MOX38QGJ);YN1V73<4:_B*36Q$KPB);$@#\9YL@"I34',E!#7@I1ZF+8J!FS!
M]LPC'%WL?LK9C?-MJ/J,W0Q890;7LV\?0XXWN_<LZ&A'?*(5,/S=&[K@XL^6
M/Z*;N_DO2W3S,/^$YHOKA]GC[?U'-+M\O/WY]O'V>JGC-9R(AN\A58X$%^"
MAFZYA8=[46+QT*_'C,X6Z=]Q@@=%>LR.T\N<_K5NKU-S\Q&'][*=]IU@FI2C
M@HHWQ;6O9=>RD.9E/""YC@R@O[._&*8J6HV^$3WM>D=,@_9U_O<%%DT\W4U&
MKK+RJ5B5R2P,LY(64?'M]2INTR:;P0]S)JOEP5#; J1 RX1ZG@']7'S-+20X
MB@N4\ -GW@EVA>G\*XR;Q<79ADWL_LG_5'P K89+>EE [[-+(PZ&7&:,PGY[
M3Z/*L-#3 <"NZ@!(+V2]6L&^Y(U U869U=SRS*X00[+I=9PR[@63IRS'NC4?
M2[PB^^H#/LW@"N@(07.08GC<L]T)47P(2UU_YVT,Q5&?G%$HPCQZ8 =:?V 7
MR&RMV<^;IU=QOJUOP)JO6';)(O^@^ HF):=YC:P*,$AKI-6 QC@KM$)2(ZJ$
MZ) ;<166HF:% JYQHF.V$P[5^C]":WM@UNOQ6%.>@&FG8*].=M9508@''"3L
M!@+&1$K==@/_-J5SY%(VQMFK.2/*A$*TI+'0@4$@>Z#BI>.5)C^XS[N9+CXC
M[K2]CVWFO 4_I:0NBZ+WG68"5AX*L7#3$E%T^M#&Q#VPCSG<"<C#_8Z2D^(X
M,4;-&B5W&/49)S7RSN."=+"%B!^9,#36F8#*XW32+#WGR[F0 D@I?$K_'%_A
MZK^]Y>S+8!L706+8;9EBP/%L=&+!1E-22VWO0_C>D.5AF3F+R^QM,O"Y E^Q
MZUWB[7_#02QML[C]@$-,?9"G1-4UVJGZY:JZ,'J6BGK0^LX)F(50+!)$& 6U
M.-LVJ^4!LI$M J7T1;$R5:)!QR__)/#UQ.LIP&><"%9,%=)* "37@N!M$$=Z
M#]"LYI=B\D+H63;4@4\T*5[));5,Z&@IHT_A$PX2'U<KCO9NB%39LR^H*9#!
M#Y1HPB>B!K5\LG*<->(3NGF+8,>&?K;['(:DI!^D<T\GNQYZ8S!<09L"VSF'
M.DO0-GP/*H7!@=Q6%JIPA,H&Y$ZX+F9OZ[O^!%,^G<J"=X[KBV8DMEP=\.3<
MA%G@+A-I* N0G=>;;9+M,'[ "1^>]NB-=2;\\M-<.#U!U?J &6H$/:8H[<<S
MTE\F DC3H2.T#TLU%B#YM),YJE0'3%$39KEO"YNAERP!4107N^;2U\I;IW[.
M/FRUM.:7N9.*K&>QE2GX\[4IQ1"O9*U4%&OW "E_56)VY((/,XN 3"*X5-<O
MG37%T9-7H@BX\U6C%<-$N!#U7@D(!MH?<U1\C"D&8!Y@E1'27AM6(H#)N*6G
M51</\Y]OKZZOT,7?)A]7]<G:*MSX",>PM88 L-BBH!9LUE@!T]?N#=UT#/OV
M_N?K)31>TV*&&$>:./JKF'V'-,KGY(I=RLI2>;![)AYP49*4Y5K@\0V*KWE$
M^XY/)1[WLXR.,!['.)@V<^P2B0EC:^TZ[@!'_AM.L.-!9(_9+*0E)OBBS.,4
ML_.:/!$.ZT/J)ZJHUFDFG-)_C\(-&#Y!']I\< _L0M+N6@,%3*XZ*P*/L.9S
M;GH5KX0TG&K3R8,GG/D,VX+">*;SP%'B1O\<ZXT#RR#!\Q7]A<X$BMV"XB]F
M:<1&A^U&G7AQD@5?'H%ET51COD$=Y*ANAUG(K\52AU*.;FL]OAR&&R7_=!VW
MO,ELG6# :W<YC:O6VN"[TJF$G74#-F#>VD]1#Y[C0EU\.&S1X5TLH:EQ2U<:
M?EI>7Z';>YC+#(HBMN=E#UT^TQH"P&"+@EHP66,%C-.P-W33\MG-[?WL_A(8
MKYL!AUV!4R]1&(:F@:0/GT "53;X]\2@CO(B1(%#[,1?5 N!(<M-1A[PMI["
MS5?5@IFAK H='P32PI=12:H E50ZL,+TAMU3A4@K#FL"?IOG)4LH1YL)?K*9
M;X\5?$VOY<!5L^FA-)AQT A1/(E2*2#V85!$!;VSB3:$KJM5<T@4<\D<%<@^
M7\8RT#H?!3XQE*,18Y-3$!2Q=_<.]A>A.O*'.?#O8BJJQFV,YOBZGI?^#J8#
M?[U:X;"@X_Q;R$_@/]"F.D_9-V#_QT;_ER#!_( TV[4,:4/F&T!I-/RA)]G>
M?W%5I_WZ2+)R2S7HW^SJBS@M<53'QV2IJEU  .;T4FH Y17;L7]48!P:,)]"
M2.C(@;$1$=?0$%7 **Q3:F1IE<B;K>'R?^ .@??^YZ#OM\ D9D$6X^#0^JOV
M:ZKZ2(JJ=0W"Z45/7C[PX!XHIPA@^1->RB[<RG']B+Z^NKY\N)XMKW]'?9'J
M7VRQG+LKL_NKZA_7__G3[<^SN^O[1_^."0 7Y,MU-GR[%5^L ['E3799!*0X
M6;=P'*]!V?+1.;K ZSA-608NM@?,B^3IOJ3_7Q'5[6U/5;U>I]J%&2_EGT)5
MBM^.I&XN12RWVX1?J!<D[&.PV_1NTU5&-M5M%8;[$6VUG5Z5.*U(@UL3[53!
MS/"FX14V0WY:+.ZN/U%>SN[0U>WR\FZ^_.GA>HGF-ZC=RZ4^U\W\X=/L\79^
M?Z*4UWS]*HBCJY*P.TAYP[C)2'/3:'5CA3+.8#\3SE)A[UFX-BWV1'WOU#P
MM'0OF.?ZBK@=5#SCNM]D5RY!R*I9E8<5]1ZK4[Z.I-P>MY5"'!ZL'8AX9Y >
MEYAZL)("0(9>:AH]'T1!]Q?/R("*M\STI0 10P%-Y :_OHA*>F='F_ZZB1!,
MHW:+AE^B:(JBL]=WNN<VM5B#+3=;93#,FXI86->:WY]SSZH7\DEG";)]-O^C
MVTT0DY^#I,3-I3F&PW$:>:?W.YA@#RYS4 F#H9P)H1 /7V<QJ:50F4:XO9TR
M(T>)05#X\76JP3HQ&_7WFE-UO1A]F;=HI^?,8Y]2C-9-MU'RSJFI2,6S%ERU
MS03)[CU]@GAR<ED$!9\6/VH2/HZ%G*Y12 $.EB(&$MZIHX4E+"PT0NA7+O9_
MX1#BCI*5C]2F\O4$O1!# "HE1RL%CR!C:!J2,%'$92$P)0L_/V<)'35S;9RW
M3- M4U1 ATP92T'<75*B%,[I!PD+R_7/$A9'GL_+(B^"-!(O;-3(.>6("N:
M(F,AD Q1@%00Y SE7,$[41Y9!$1)=ISA/$UA6A5%44Z-O$OB&&'W":04AD@D
M$U@Q"7HECW*F@)Z \:L]3U47A8%4E%PNZO3*=0W8P37K$CEH!P T&%6YD-#7
M__6[;S[\&]O"J.CS.^_T&;0&OLS0+"^PZW&KE% V#4FIZJW3,A1&V7\I]*#1
M;P)F^1FX[L@<+!)6G;%AJ5&KX8UR<NA*I@W%P4S@S!A-A#K6X*A89N19R6FO
MNR7X&:<YOWF9[?.PZVNK2QEOT]ZJ:2\WT^PEB)-ZU8LENF&!/>T-S$T>:.GU
MVJ=_I[/E35>?KUT:/?4+H=S!X[*P\LM(V5VD*VH<O3#KHU1C*&A>P-=M\Z"^
MRJ=W!WG8O,7[D*#ZC.H+K%E,27<-]:R],YAG 'P,WA89X0^**I,E^PZ/V8)V
M4\I448XQ.+]GVO7G%>ZN=@4 S-#JH]3CGJ)^E_3R=N_-?D&R55RPOE+Q!?L"
MCI,=C("-DAO43Z&,14ID0D0"+N@@P4CHO?*YP]EYD8/@03Y<ZA:/]7K.U^5M
MBB$LT^N4H,T_;0&#GWSJ"J)=J;51A,([]=JM6>L],4^[DOMNIZFGG6>\RZGG
M"2>9WKW%TY3G.#-&3X?JM%^C/O?R(X[6^&,0I^S'V:K Y &'29#G\2H.@\:9
M#MZF3$?VL>_X4)R%$WB2T@F;'-TRPJH*B0T22J:\(*4QTSG$* F 1QLU*/>(
MDX 7=@#QDRM!'A!X '_?'F!-F,&^LYW[-OYMOA(;MNG<K9VNE\!%F^)(8QEU
MBMZ=LGW0JB,>J9_5U_YOJ-)'OS86 ,1!LE:R('&H7';I"3B/:1L $T85_A0.
M9<:0E/$A;6#(46L_Q^$WZ^SE6QQ&=<6'45??](_?%B];6:#\\)&+.I:!8;7;
M_]U[O4K ")EA@QUZR=$"$WX6GY87L0P224;'(WR2H'AS)5^_X;#D>XFT%UIG
M9#=[B\=K6QHY5]6OA=EP02H$@A@Z9$(:O$86-<)T *#BKIEQF_*$ZV60*"@Q
M%G#%!3FPA@3#IR!J7PI)/)7<"/FI[EGT]\>,+0<H:GOTW%5E2V$U=3UX"**J
M98B$\W+M?BTJ,L2$<9KSQ10_-?^)3XBPHMX'3UW5N@124^>]1R!J7,0SKN]:
MPD_E-B[)(WXK+A(Q#%PAX]JM$^"-_;M6 $2EJU!-\OC.$+?AF!"7V1(GF&4Y
MJWEY'VQD+KY"SA4QM# ;<DB%0!!$ATS8<Z$C0)#N4*.!F@Z#Z3AF!WMEU'J@
M\]6*SD])?I/JN@\+'5>LL8;?,,BH ()-MBB%,!ZFA[H)1:-YAFZRK$BSPOF2
M L:$)T]D-ZD8B:65=C9"F2&W8Y5:% 2-S/B$\8MJ(*Z":AUOU*EVIJ.V#'KJ
M:*6=C6%FR.U(IA8%01TS/GDD080Z"GGL=;)'EN"<S\LVX]T3J82[WD4*K>M1
M!H]!4$&.2>@YKN>(BPTGN+,-2Q7COOYG85$&2;)CF>&T-) *.F2#!FB/%!(I
M*-Q00Y-1I)%&3!P 5?CZ#2T%0Z(?89223E?&U% ':V2B& BZZ+%IULT>,\38
MT^>+M]'E/DMI$>XI\U_6AF%&+>IL@F0 V\Z+%'(@:&, )\R"LO2<L>6>]3<O
MF 1K#&9HZA>%EZ+7>YHY)-7P024-=!FC).+@B*7&:,.O(;,&@YR_<:TMGN7H
MII9W.L:98 ]&.I4P"'[9(-3O%O6Y-N"8I\&OBE!BX>95-'">EYLM^]=5O%IA
M=I00ZXDVU8"S@(.]"M9&(DS2!L'-O2 +L0M5P%IK!75F4&?'WQK2J$__.>=^
M  _%JH+N'@K]LM)$ ^YV2_8I6+>-,D4;!%OW@BS;>%$,TB_Y-[6/V#.)'G!1
MDN.>A]Z'M/>XJ)/=3Z*J3,T?0=6%4--2U %*1B70B11DY[!OCW\.>Q_2"3N:
MT\BG4_='0G.AU&14ZP(EI1'P1'*J]JT=4U72\?^<MQL5.I9::[HBZ,2B--RT
M5 -!RVE8A<,[BB$9_9SW-IJ\]Y7\:.5>W:1"TU\/J2V*NG.4JH$@X#2L$[M$
M;LI7/Q@\E4E [N*\,$;\:62=]74FN&WOIA($02<3.J$'J^014_ 3 "CI@>4K
MS2I!CZ.A9%U9+@6#&SIHUD.;IRWS9D2V98M1PWG EAU_#.(@B&2'41.\=0"Y
M3E!+[;UIS2Q9E4%M(/#;#] R:,CAR7*IU5<.?LT$CYO>>X^ ;WG[E8MY"_>6
MM%29#(CFJ0%F'>OMI9?G[BH[G*!EAE3*%3$T$!M>2$1 T$*-:\R*:MK0/R52
MJYQYW"U6A[$,'[L_"2A2H/\,1-U+ -D? _14ZVQ76GX6J'WB,!!2=MZG_AE$
M#0^QR&(;/1S?T1_I\G*02W-\"]JA+?-1+1\GLK+T(W4V:VQ7. ])S#?4M4>R
M+)0<QHE9%J 7*F;0 $$7:YBR@+&/L]FB=?YZNLY'^HC?S1HDO__N^Y?N;*H^
M-LRHX\XGL(3?.0H&!1#,LD4INA2-'J**7[_\KG?:V+4SD>;I1;HJ<NKF&$[Y
MJ22=.1MZJ*WS(1<#01@]-G%A*,W9_L4%3O$J+G+4N:+^SO==_Z/8S5Y)9":,
M4M)=;* 6:A<$*!4#01@]-D58W^PUH!HPV$)XZMH''&8OF.Q4><KD8LYXH@'9
MDD0B X,A:F "/0C)4IR5>5)S!(^.<C5&/.4X>\!YDV/QBOY7D>A&*N6**AJ(
M#5,D(B"(HL8UYDE/DKJ\!2:;.*T(PA3]Y,?IH^]#8H@,A17%?;!%!5I&F[$L
M./XH $XCDNLIU'I=U)VE8KET).!L<B0%ULZ$!D]!,$$*29CCK->$7P>"VF$'
MP#F^!C:=>NWR.->ZKTI1QWZ)$NS(-Q'D0)#% $[IHXS(4JL[ILNR^+P@X9P\
MYN0Z+^(-!U-=SZNCCIV:*QI-*41#*1L=$/2: %1,Z,T2R_/4SB@CZ''Y@#H3
MJ++A>J.WNZK .%QI9)UM^IK@MEN_*D$0'#*A$[:!.WD$<YCK%>,^*_Z&6X\-
M:_LM.S4/?I&Q$!)O2:D#@G,3@$[VK*A!1"VBSJ1C^MW0;T"!-<L)MVFDV.E4
M";JBF!YH0RJY%)0H-R-" )NC(WQ7)7[,KM\88_%\=9VN,OHYV"Q1/M)-TO9$
M'9LB*?BD4P715TW'*[FVF%GH%ABC$K-HFMH*NU&E9\=37(VLF#_'676Y\GSU
M8[;!EPP6V=T%K_9,U9OP25>;PNDXJ],'2UP+T+;L;4TQ_C)CJ+:&J#E )+Z*
M\W^40=+>!<CO'F\V%>V);#;CD\RVA=01VF0#+*DM@=L2>VR.\9L:;#>B87";
M#AZT-'5Y;S=;=O,6!?P4)W&QTTUS]K3CB=W3BJF@MYT1B/R>A-Q$\#/4,\=8
M/3;H;[W'/%G2"7M8\3%,FM22D"9.1I0 )D\2C%:K@H*P1Y*8UP5'DB"Z(B,\
M_;%S'V-D?Y<VP_E]5CS@?Y0Q:?M3W< X1=G''KI=@60[ZGI-$&2;#%>WVQY1
M"RC-"D0J&^T(Z'HAFH>B72:T"W[,/J7;F 6ZJJ+ =,+.%IV-@-NE9J4D"#H9
MX0G+RE74(-= <8H>XPV?#'RZ7]SVXI-S3\%A'-[C9MT61;>/H99URB,=W &-
M9()P6*1!)R41HP[;&QLQQQ=AC-OU2DGG9-%ORBO$8!'%:NM]2!,?.^T-W@7!
M44$V:723!&M-N49RKIDAA3GFQ4 (%"MDR+2<8 J^=B_[?=YEFD?$Q(VQH(\Q
M1@0J&V Z*5#TD$(S#RV769K'$2;>&/)C]MI!MQEA5 JN&:,'/F:.7!H4@[00
M=4PZ0U35,YU:YXIZW-%-QH-"?@X21:^CE79V6MP,N3T]KA8%02$S/N&BX*%?
MRV=*$5IE9!B&P[*K>W%ZI;,^8_=DTO(_ ]=W5'H5$%2SQ[GOY-Q/JD)IN=0;
M&7IQKSQ3;&;H9"%M9UC@!+"AP5'^E$8DV:V7."Q)7,18$8B@D75*%!W< 4MD
M@G Z'PVZ,3&H**:RS-ONQ'TPY?J-A#Q*7U6HGH!33@C !D1HG\*I_3$DX?#-
M&R9A3$<8+N2CKC^2H#J>>A/$A#M0JK+())W6OAKJ@ :B&!P^*+$)<13T>>7/
MHB!G<1-<T\<ISF$'MOOTN>!<O7Q.UXM0-H"8%%QQQ@YX0QV]- @&64$T#RH[
M]"D@GW%1'\2JKJ-V3*K;:N+_2 )^!HB0NSC%MP7>R/(/Z(1=D<D,N"&26A($
MB8SPQ@2J%5"M@:@*(PS/<H)^9=J(J[O>GOQ4D.01DTT^7SV2B*+2S;=UPLY6
M<(R VP4<I20("AGA"<LW=-0B<9 @KL5C6T4RN4[VSY&KI\RCY\Y2^\M@M1G]
M^P\AS8)EP !,>UM8CW$AC7\9"SBOY0$PH9KY4Q!-7@I)N*B!/7,=?5<F^,-W
M3__V@<*;1=FVP*J]0Z6DL[@Z/=0VB$XN!H(&>FQ">!R51DS\_$._HT>UIOMT
ML?9DT0D[3 ]K21FU) C6&.')TL#"(D_5__%WJU-@R83<CB@R@,-1I2\!@AQ*
M6&(*UVSK*Y-5G[Z/9),6-H-,7]#'&","E0TQG10(.FBAV0XPCW7>,]]CC)8J
M&EE/(XR:,$I!$)PQH9LRO'BC3C.3-N595,BY'6<4,(=#S2/ E(HZ9,)TQF_V
MQ KJ]=LV)F8^C,7<TD$.<LB&H0P@,DB!B?MTC9 _*ER5%0)E23H!M]4_!C:L
M^.8IH"H?01(\S=YXT(AZJ?%>T,!Z/7L)XD1Q'ZE.VBT7M)"'Q)"* F*)#I\Z
M0Q@7]! 1-MS7661)'%+D"Y*%=]9;:PHM/WMLVB+(-]ND*B 898_3M/W6Z*(@
MC1 S@*/JC."=MYVXMG!1OV#Z!38+'>>T,\$72*=2@$4Y \I]">=G(4Y>JONL
MJ.'H-H$GZ/KEGJ8X>@Y*% %S48UV7TZR/)RGX.4JR)]X4>L+CFMR)D7>_-*Q
MM+D#>4[601K_DWN/[* +A1SQ/V9IM*!@J7=9Y]BYH;/,-(R#9-ED$\AG3WG!
MTN2,ON61;;M@^4D^1_\J[*,8]MY*3E$:(8MRS_89&EBO&U)GGP5IM&] W2O0
MK\U+CNME.&]AYAO]3O>:=]/N#/<&GNH=7T9KM+^=\"-.,0D2[PUJ%H8L@5)O
MAF(8AW0*+DEN!MZGJUH:#/&,$(4%B%:A<XX ==7+>)WRY)9I(1;-U ';*KMD
MW+0"]=EGIPF&B9/@CEEY$>0QC_<<N!;,UUB6FTU =NQ9[PU(0F/OW+TH\SC%
M>7Z9;9[J_2#:_<_R'-,O\H\RSOG-LH:><JH1EUS>KX!]3D^S (;;>\$6.%X;
M03TK9X@;03TK9VSRFN8L]2EM D^X>,4X1=>4ZVR%&97LF 8SL:%/J:M14/!G
MO*7\SRRF#>-GVGK8R?>;C-37Y0#JW27?T=Z]ME7VW"(L76$[3<@M8,*EVAV[
M_??2M^D+;2(9V77X#5VR5L,EVRR@]RFF$0?#*S-&<8FOUNCG^0#4QTE*9.K9
M]"J>&:;MQ73RD#EF7D>N5&*6MR/%VC-')ZR.!TQAE/B&_LB'>DKP7^+B^;+,
MBVR#B:[Q6ZK^]CV4XT'[ A=S[7)]Q+XD:BR@5VH"-38@=1>&XIJZ#GMUE]W(
MU$)-("Z\[F4B8 5?<^[W1[B9V>8L+S2.7UB$R%G'8SY=J+:SVM_NXNJ*! AS
MX(]9%KW&24*G1[=T&I^N8XJ_ FWM;TVTX9+8>Q6OS^Y)!L!0?!_4XI#:*%8D
M/D.-5<[F>?$,JV-6%]3LSEEHNO7JK(LR=.Z,:F 8:H_5Q,NJ<VVXZ9V&BV#'
MAH"<K3>%(2F#Q+37HM5P23L+Z'VZ:<3!T,R,<4RO1H.SJM&!U,\MR^TVB3&I
M-B;Q@F1K$FR,6RTF+:=[+'9%&&RNZ%7 $,X.IW!_>JU51V:PK&%<SSO9KO!3
M8>T'JH1=4DL/N,\HN208(FGAC?G#A($NKPW+8>JFE-+^.*3MEA2B0%EDZH:8
M- #"$#J++N(7?)M2$I=5 %P:_8BC-4ML%=)'?.X\H5\ZP*);XAU<]"$Y]S8'
MB,"'ED$D>6,1]4QR=Z\VBCJK8#O5R5_%W/,>8A)X*S'TX?O;>\_MQ#P:M VE
M"Q@>-YE>.M-/.&!F^3/O+>0V#;,-?@S>)NP::S3<KOX8H0]7?93B8-AIQBBN
M\C -?E4VS"Y84B3S.J-.Q3/%#"N+:GG()#.O)38L [ 5\X 3EIYD$9!BUPLI
M,RT?FM7<[B3:%6*X@ZC7 <,P2Z#BCB%70URO'RT(:EU153C[_FV2!0BDM.S]
M)JB#IZI]W]AG+82=ZNM_E'&Q,W2&8R&7+),#[!-I* &&*U)80J(<+@2IPUH6
ME+S/61)ADE?H[K,"VW=7$_2=;HY,+=9@F\16&0SYIB(6MDZ> X)K_7_]ES]]
M_^&/?T65'>\$94'_<=',Q%GX#YV)XS2<LG8YT89+HNY5O#Y9)QD 0]A]4(])
MV[/1AH:U5H!.>*W*;>ISIQH!QV=M[SO-POMBM*D?UE+:.WGY><7Y:G30<5?]
M?^-!)DMEIP>9)A5H<)#)2A,,.2?!M3^F^E..V>_7>1%OZ#3'/T,'60CL>*E7
M<=MUFL$/.TJU/!CF68 4@L=(3/N[+0L?H^0:&/!.L&X[)[>CET[!SWZ?"KA\
M-V\L#8981HA3=^*\<^OZK<!IA*,%R:(R+'X)6*+5HNZD5:L.>AVG*S<V\ <+
M.3H%,#RS02GV8%P6U<)'\-V*=9)SQGSWAQ^^XZQY_'BW_.T!A]D+)KOYBH[-
M+W%6YLEN$<31[6:;D>(Q(/%J9>BH#K#C@ET'%Y,Q;F\CWEEX*')Q/;HR5;MS
MM3'$K*'*'*KM>>\.[_%KSU\E64K_&5:!$5/F'=/-N.PT]RUDOQ^=:L,[J0\$
M+N$T5:$LOLWS$D>#+#D#H]XIO0R?<50FF#7DP6C2'&;</;)C$\8U]\EFG"Z]
M[UG(P0K\1!M@*+TG<&$]OC93==,#9V+7GGSUOS;?E;;)E-)/>G*QZ_UES^DI
MIOSP>GIAY=RVMP.0WY/!:SE.,3X'.:XOW9XEG*]QE>R))S>N_N*;\"M,"( ,
MQMVG:%-M7)8465I,[,1-ZGY(;E<H.;'UN@#); 581^!>ZA3OQ+R*\Z"^<(,G
M7ZUS+5BQTE+7Z<K5E.(,%K%L%,&0<0I:'1.'=M#3#M66O/.R:VY+O&8.^0-F
M$T[JI]^FJR9QW\6N?FC??TZTYJ<[W:O(\MYUDBDP_#X,OX[Q'S$[YKM]CD/4
M,W6B%;>N&$T*&]K@"A(_E17^ZS3Z%)#/6.\$'&;*V;K;@85ME][VM..=NT<
MKR-N8P_U#:*+':(F46434*?=I&ABD67Y748=\5D:U3LIZ;K+VV3?<>]AT4_G
MO7?1Y1WX9'/>&\+QRJ!K#\I48"?ORR^?V96&^6W*9IZO+'G$34:NLO*I6)5)
M ZA7J E]^X&F/?3U1_D8DK[_(+O>F\ )"J-K"[5]%*>H?0.BS@UJWG&*=G*,
M^!LQ=R5/&)Y&T]:X][+D.%IGWZ*.@GBFFO'>% ['KF6^).LCI&2/71] A[NX
MP'?Q"Q82!$Y< IQ@R8\'-+FH<L_'V@P8CN^/7<?QRM8Y-X:$7'QGZ!Z0YY_I
M2GY3LGL79ALVDZ\N@KI^V^(TMUMM/.XK?+2,8WX<69,YAGUP;>F(A3(W,J1H
M9*AZ$>J_"=6O M/VYBN636KB8")3\3-JJ,'+AP=1'AQW-2!U7+S+TC5ZQ&2#
MCI$>S#B?I6S'] L456J&FM7WW#&[PM7^Z6663UJCW-.DA_GK0867S%OWLN>=
MN$<LA'[CL[*+ZBP@M>6<W1_!7?>HMHY":AY0Q_HIH-T_GU',5ZQULL:Y1V=K
M:\9/!SRMD/).V<Z&=[X?"%S'\<[0\;OR@QE=)[N]PT&.VTEWC=ANJ662!9<\
MWJ-H?0I/4 ?#WNF8M1YPY>)^HH[PIMP@;A4M@MU1HF&-3@C+:L>3VM%_9@3'
MZ[2*K@EW+)\>UJ^1'&C+@]NQ7W$E_L8T0]ZI>PST6A)WR1'97Y5-U!A%E57O
MW7!_?B!)(ODQB-.[+,]OT_8&[-ZMV M,>-P"I=J4:=Z1WN-K;GC4SZ2:4![E
M)=[;V*E+I@VOH49S]#6SB_/?H2Q%QIRF_R@#0J<%B!^< ]4TGXH>SFE+*G)%
M?PLKNH*HEU=D6B#IK85J.5[P%!H!(3N>CWI3;9?"<^%[N\K99INEK,1LQEYG
MXJRGU!<XQ:MXZOQT#XM^*+UWT>5<GVP.8"/8MPSZW=7&9K5ZTR8(AK?TK<J^
M.+$%V)KQ0_MIA91SW<X&0()/ JZ/I#QJFDWCU'894'S9 /Z$R:Q9V\/TU;9(
MD@FK2=4[\_;#JR,<,X&*[-C$.V+O>1V0E+H].?7Z>79'EL4I9*O]<5)2Q!,[
MT8G6_/2E>Q59WJ5.,N6=W\?!K^-[8P]1@XA;/$/<)O>Q:ZO^V5]0- $9YVJI
M+R!4?32#DMNTM38%&.:JU6DX9>86DSB+*"!2W.E(:H-8S$&7\ C8H$!/>!VG
MC(R,E]4[@1.O2P-49:C8Z\.(1N 04U5 >Z*.+<#I4O>!/69O>P,J"^#>UOD<
M7EM=%%>)2Z*2,%J_"TXWNTA[?;9.&0Z'QP6RYVZCZ8:S?ZXXF[(#OCC:OZ,=
MH1:3ZC =?KT&)VTMC3;LB$Z91EA&9!UGW].H^;V'<?,Z/: R6\2:<1-31PW\
MB'F%\Y#$6T:\:1]BH B@5Y$4Q(* /2WH(Z (594%L3?019V2SXR(LN4!2T58
M.0^%11DK+>_4F@Q5E\9PVZ4QW+(TAG&5QK X3AI#XU)@D[J(9R[J$A<-\A;U
MTA;QF;=^>6H_BQZ6# \INF09<1]S,*A\E#*HEE_V,XI^Y?_Q?^-%DR?L,ML\
MQ:D6^ ?%"#3-A-,+!/8HW. :@0GZWJE^ .@QMQ^S(DC0MLGZMF7$ALA4-LZL
MT_B?.+J-Z/0G7L5!>U")I[JC9>P==J4N#GU6;G!T&>3/] &[0^DE2#03Y5._
MU'-K.,$'-+2?([X1<HL[?C&%NVBH(%_=QYWHE]5&JUQ_E6271,%)2U6^^MVV
M5\/'/%FK5;SWRVR[^L)*EIW!90@YV>>8%\^8N*Z#^J5?1*,=?$ GS96_\<MO
MJ/UBCILH?U8?9F@RGGQ1;71!LBTFQ6Y!BUW4?L>6;24XJ 7-N]]KBS5^SE,U
M7.6+O\CV:RJM9*F;RY^A+=,X:_UFKO1%->@ND88+1WGPMO?::"6?[%3-M/>J
M+[)ABN43EI9X$LG[8'.JK)%']1/J7&<70?@YR=:RM>63OL[9IH&#C];N*)SP
M7=[;E*,"BO<2USGY:K%WT+3NLR(.JT2UE)@L"(**+3#9Q,):K.-WO\M&9_,Y
M3]("=2_^\IJC16G';;-283OAG1+W/V\N+EFT#U/]HCS02L2!L]&\Z+WZG<,/
M=2J7LQ+QWA1/7C0A!B5>/Q?GV>J\S&E[^_)6;NI%J?Z#>CUY$>PD42R>,+S7
MQFG]>4^\%*L& "V>V4?A%5LJ+![Z&-LI+J:8LI*2$D?U@>^33S",[W^7_K#M
M9SW-K-3P<N^#L:\22P_>X CA.BOE.VBO2TQ>J#]?WPUTA;=9'H\W2UR]]%VV
M3.T'/$ESE+[QRVN#NF(*P:N5+"*5,(HJZ7?0_@:I%V-AD\/!^]YEJU-]MI,T
MN/'+OKRVIBCAN)E5&3V33NX=-+"+.$E8*H';]/HMI#99GJ.<;;(N2+8Z_5!G
M?/V[;'Z6'_4DK='P[B^O<=H56#B*66NQ*[TPUV-KMBPK.E^MW7+=+VH%Z1Z[
MB/+A;WFOJT"]3W2J=1[Z"J=-L&!G.URMXW2%DQ\QB7OFJBL)WO5"[<<LBUYI
M/^*FN9G?]@Z:G>TG.T+S,[W*:3-\P>0IHS[D\1NB93''#;)1\][VNH.5S0?@
M):/34Y;NXF+7^TMV6G=_,WZRHDTKI#P=FIT-[Y[>@< %CZU61KT& NY<;:\L
M=_2'VP)O3'OC<A4??;D.O*Q#ELF#89T%2#N&,2W$U>#0K >0'T-G(2IM,=DB
M?%@H$YM-M.'9J3 7S^ JJ V H^H4U$+,^^#T-L\2%73*8(C;*Q";I=<EI&[,
M-75O!FF'V>,)7:>=-<^]ZI0B&SI<&U/@"+X??G$;L;5R3NJ,OVSAYE3+K;]D
MY'.<KB^#;4PGL;/H[V5>2,Y,&62=+62:X+:KCBI![[2Q03<F12V.PDH>!:V"
M][Y/?;WN3SE>E<E=O%+-:NQ4'=\"9UV8T?5O1CWOQ-L#[)B'O9N-^>+6&5I5
MMXLGS-H9*KD!E% +WHEYF[[0]I&1W4/P^HEVHR0.$M60JY!U23TMW#[7I()@
MR*5#)T2U!J]HT\C X0OK;&^ICYJQ?1-3,4?"7A@C!2RES$ 2'F=D\&1#(=O6
MVE92<&C#NM7\N5JR--)F).R%-E+ 4MH,).'11@9O3)M&!JV9D'?6\%P,30%B
MG"^W <'L8@\5<W0*+MEC!MYGD%H:#(N,$(5P,R:0\WWT(&1=$%<[T>RLY?@B
M"-D,H!E2/Y),&)ML%)S-TZR MY,UK;1WJEA#%):M*M'6R?'>[;2%D/%')>1E
M<!)X(I> %6T@Q28/%NCU.&=HS<3AD(-=:%GOT.:8O"B3;^@4O)!&"5Q*($$:
MVB$D(U(Q1#//_])2:X>"),E>V1E=3Y<EM$@4L0_]YXXO0K!ORWULBL"??EM.
ML?\UN:LX#]9KPAA&2</N/N21\;H( [V*R]9L [Y/(IV\=]=A L@QMX8JU<V3
MU0$'*&$!BD+=&4(#S&H Z"84PH)R=^#"!"R!3J#>':!X@?MR\X0)*Q6[A8&U
MB25>ZVZ*TBFXY)P9>)]M:FDP/#-"%!*)< 7&+-*JH+S2\>2LU!2_H3\V*8A^
MB8OGRS(OL@TFUV]A4D9T-L=V2NC_1H_!FZRV]C#CV/6QB-8\I!!R'ZFVZ'^6
MTYR][_(4\\E:?>A7\3U,2BX[#[L"]"FIUP#3B5C!%%;CGFGO<5Y@LD$%S\87
M-(FH"9Q$U+-F'G:3D:NL?"I692*6UD#!:3:<,G*?X@T(.L4 M%GZ/N#E$_?6
M$@]P"PF.X@(E66Y()N"TKZ&SX4D]32</;Y2S0BL?SO(#NQW7=79/]2966Z?R
M3FI. EAH9UFZ1I):\S]"R HTI?"^?1#%"I]4$-9"GPZBO/&#:_%NQU\?-]8:
M;WK?KPC'N_K]A-6[(-E+G,=9*BF:K#9U\O"Z<BNTDASXE5(^S54"Y.W_0N("
MS\4+8O>V L_C%XHXO<]I3;Q/KW\,7UAH[6X^9_$DKTS\/*/R?!^)]3R4WCA>
MIZCR;,*=9>BW][H_VFCS [S[T?<KP#&N2S]AM<K6^7A0N'[&9Z$&;\R9 EH^
M5:\G&HBM71M.H'FJ,_V,ST[S?=6<Q?ROO5N@RC* _O5?_O3]AP]_16F6GM>Z
M@*JRR7BPF]C^QGJNJM%^])R$6EF)O5QD54U^_U<$N!:GMTB)ZCNKRREM4E:=
ME@WS@ A;UN77"(891L2\_Q;RSN)K;6"WX;4Z81B+,;8PA7UDZB6'8P+MO$\!
M?THID 1'O7M3];L[.@67$SLS\'Z?I98&LZEHA#AF5*/0T:I;WP,3JDN;25Z0
MLCY,7N',2%?&!UP$<1JL5=%^$_1=LF]RL48#J)TR&&Y.12R<GVR>0^"CW"VW
MB*VPU'7,0_OB6$VKO 5<&+<_ID"6;X>T'>5Q\AVJT@)+$Z'*4V:K1-VEV]6#
M[5+CRN6\]U 6X.Q3SOH?+A<D6]-/P^Y;X4&)U&NDDYK9FO:>>=$=(\T(VQ]^
MQ*0->LOGA.L&RF#FXYAVV;D=\V.,MIT.MNN=^"<HC)#@)WIAZ[XY8M6"PKK+
MI:TE164:9IMM@HN>^^F_]6@G^/LL"O@?S 7XUBLQ\ ?O,53#H&V9T/^]+GVZ
MW3[:<P5;B?J];3X<>:WS?56>!+C]6J?])L0!/G03A,_O+9?L6-;HZA3,:7MA
M<V\U3G:&\,BVG7GIQ_X<K5M_+,/>W:%3E$9<Q3B.>3#'(K6=1%W:+O?Y/CV-
MQ @8CTI90.L!0+#@O1D<!%LXL1(DF 6-5JD]BVRR*^:$Q&UI-G3*0^?U"TQ6
M&=FPF<O\*8FKDZ&*SV2IZY*RDXHC.<ZG5P1#T"EHQ7ZX5F)Q2(T6REJU]T%)
M^F-('2CUUL=D*^!H*A9Q,F$[$^^+N@)N(3!82MTS1NE:T3N-NPLCU(E8I6[V
M/@;\7 -B6S#Y!2 F;3"4G0Q9DTYW5J73K0R=<TM@'%I-Z>X,N3[L5&&D>!8+
M8Y?BN=,#P\P)8*=R\@Y0 A!-,74)[LQJ0 BI3()GTGD/1-3ER!OG&<_/T$<0
M@3>:\LS"L-R4?%8WV["5V7_JYDC[& +"2D-!+7FJL (MNG7O$EA0NF< !3T+
MD%FN/I9L4@+"7L5!9;W&>^A/U:>6)=2[!Y"E4->T>JV!70V5YO7$,&)9IF[B
M/ R2O^& [-%HK2T#X>O43V';_5J:?0_,GUB6<?-@Q'QGC>$>OQ6/KSAYP9^R
MM'C>P]&U,@JW":@^P/[L'UM\I\17%$/"^3^^,\ZS%OSXFAWE*[6VX#)\5-S]
MB5T;>J=\'J*7T/A/[Y'&],W3+T4S6 -.Y7Z1#R0S,_6>Z=S#+R'TGT\4_#,-
MZ&Q58*+BZA'L.0OR.4:QV\">0XQY9^RQ2B $E#YC@@,FZ2D2\>BS?6!7$5BB
ME0;Z>A\=FTMP-87X!<?K9[:*]H))L,;&>T,/,^DV3][AA1^FT]O?GO?^YXB%
M$"X%K.514"D,EE,M\NJX:0D]3//5N,BJCV50<LIFJP(,^*K5@,-(&YC".9X^
MQ7 U7GKGV!5^*I8X+ F/(OP1)]%C]BDHV-^[?MJJ2YXQ[R[+M9$F>UMS>H''
M844>W.NQGRDP/#X,OYB<[JE G;DSQ R>%]EY8_)LE+&Z,HN873"Q*^(G*;*-
M]I/<F:ZO.<2BWX8QN>CZQF%M#G #F5J&XS:2.T#!-/6QU0?F2>5=R*4A>X-1
MR_G19G,1A%/+:A4PS+7#*9PWJT\*^C_DR:_9[1W9T52)0A1>,D(34*&O*#$[
M[]$<_=@&!,11#]8)S5=5OZ0HZ5#$99.6@>N3I?\<3&.5@)*<>LN2%W;:@AK
M5:X,+G^ZU5\V!-WA(,=LS%*L#8YD7*[22N'U5UX' M[K6H=*<OD\'_\3)N>]
MO5?=5IVW@J'6C_!J<>?WSFM BP.(*.N=,Y8 Q_3AXNVI_XC*GZB36.(TS@CW
M9G%4=5\W02C+\V$6=]9U6(!N>Q&-K'=R6 (4CI-R#52K--.+1LE[9W.%5YBP
MLK!$4/J.1B[J=L:L!CN<"HMRT *7-1CE644:!9ZSBU\]P$<MZJ( (-%3<<MS
M);)D3)<!(3MV^>2&I0K0S/35*JZ784S@Q^LL*GE8^Y(62.7)A[J3F3DJ690F
M>LH(R5Z9.TRM4 7,LVYY)YZ]E^3=0;+TC2"[1?8>4=5C70[S(+$^*Z$FJFOY
MF)O$+U7)!MY32S3_Y+I-*5"<%W6LA>*C"%(N2:6 V"?42 0,F>2X)$<CN-2Q
M-O 4CO5@,.;'A:N15>8"JF6=N=0FN*T_K1*$LE)G U)<T3^5'Z0D!XE?Z&CX
M@FMH0=*-JA^#>'R$T%;)(5TL"]#CC4'#>S<R":9(H4:O(0]U>N)6DU]4=R(R
M-1W:+4LEBMM# <4LC?KMP- '[6/%&=WV+V++O^DF8!!R;]RF<:^Z;XZY2Y&R
M^_N+=X^I[R#6^ZLQSA_PML[2.U\M2$RQ;ED[M3PC=:!-7R[^WL57308F&X0R
MQA^S,""/!DXJF/Z4U'ZFP')<<T9J'SOOFM'&@U+^S_M-+X_FG-2^QF"3675*
M:C]+[Y_0^J-2_L_^32[1#?VNQ_HZE2W0A.X7]R ^,T/OGLZ]0ISBX)\'-M,I
M[M$^#K<%F\V]XA[&9FK(^XSR&.A%&O_P'2@:6Y39'^E,7(*UW2=!!O/(83\J
MJTW/W=SD<U5.R)XRT8SC(_A[%7)T#':2#6@#\)[X0<[R364QIC^QTX9$47V*
M$QO5]T;(=S!)MRJ"/G^)K3XX+FIRE-@IOTL^0I]CVQ1",ZVV5X?&1]7DV5;W
M/;+QQ%-DB],1,F1M'A0)S_8QX.5<A77!I(<NC-K>Y[-[0Y9-8OE>:&&5V09$
M)[AGDX/5Z>W3V<&:(UNBE8?%EFD4Y_S^,[;]'N3/JR1[]1^G*"W33SVLU?70
MVG#LB3:\D])4/"-#50:\]Y*'H):'X=YNMB5C;!-3 I.P4SX#  ):$^T=]'^J
MNYHH A8-]Q(D)>;!VTRK/:ON_^S27>\8;W.@2I<N1R/OZ\BT%+;J_/1 &$Q'
M94(H=$HLIP9ET^@D')B,-++RW!ERSAAT?+-+@&]BV!VXS# V**V9=@<HK8NL
M8)^"MWA3;BZ:LS"7P98^48Z1TTSX)J.I<"9NJO1!4]4 6L7<*N4$6M56SM"F
MLM,[CQ?6EKP3>7C:L$FO=!44^ KG(8FWFMN6+'7]'0LU%$=]/E2A"(:L4] *
M+,V"%#7IN>HLGBCJU(!1LIG_/-#"7:]6.&0'0(SWT4ZTX8^BEL534]5@ "AE
M[5!+T\+U3OS$S7D+0LT@W-B!="_MH@WWX1\@STLVD^.'YA0?2JOA-.^;&?H@
MYYM:' P)S1B%7&_LO Y;M5YA $G%V.FXG"4YQ/D\O7XKJ"M1QODS*U-5)$6Y
M+?1<,LNZ&'U^&97 L,P6J3@RYSGB:8_[*LRC/$9VHH/)]PMU&*B+O&)EJ$ZS
MC1N1XGO8*+JDGWU!^OPS:X$AH#54(>,[4SS/5BM&NN(9(])<'(_*M,[^C@_.
M^:[8+F91D''*$YC(QD>%C+--7Q6\=E]W+."=#CI4PEY9)\;/J/H?Z^[P.DAN
MZ*BKFK!WSYTNCHQA#58^FH?0@D3&P$[JYB@S,D1E6.#HAG[/!<E"C*.<_;OI
MEZ0>S"1-A[D9IA2EEZ#!1@U&OS$)JSA1JY01^V9H6ZM7?X'P99IQL=Y9XSWC
M/:WT*I^1^CIF"ST?J?6,Q9#EV5,J>2?@5*3*9#-ME@7SF';"6NH?^E'-;L8R
MCO-RZVI!"4W,OEP+@IFR,+BC6X_Z*T^:I2JMENOE0HLBC!<(-2I@B&6'4[8(
M>(9>QW=3#=8"O1.O'['!;Q>8KW[*JYN/+&(\! U?@3,*Z*KPF9$X-"?8#%7H
MT9@4G0^?ESE& ;^WRD&L] C;;1HF980CZH5M,2EV"PJ1Y2:Z_D<9;UEW2_\]
M" V*A3G3:5[A)=[ZB!]'&I%]!/O>.]@3%DJ;A!\1]AXV^K?MA?;+U;O8+("_
M[ QMV>OX;!,W+SSC?PY#U8YPBX=%8UL^9Z10G&LV"7MI %+ 4BH/).&14@9/
M2Z\SE#.5+A.MBW,KZE/O!ED_IU$4Y^"U@O"H87$H?L2,88IBR/Y?_X;+Z8[*
M4!N(7R@KDJ6/V%?USL/]\ I.X_RG>NSKWY<+BI)V2;*U&KZH9Y$\6R,.>4KB
M)[?V47G5IK1I BTLBBW1\<4M)7P5NP0%D%V8"J6P"13DSV@;Q!&_4C/@9Y3R
MSH&/4[XEO*$F2X*;=3X?/KM0H,N$=KCQ*L;1+)_36490\&C=_/F&G?4S>1N3
MS7EQ[?8LM-3[FVC+.ZN/5(#IA#>1'87M>^F8C[+FS?R@*3K*2=-#VT.;M/HX
M[4%F#EY[4!=Z>GL0;;VS]J LP,G;0V__[=3M@>T+TG?,HBCF5R ]9B///;]-
MK]_"9W8-TDU&;!9,#S;IK%T<J?!MVSC0'HSV<9Q"C-L(M7K.R1PT=MGMP^V<
MCS47ZII75GDS.KJ#=%2/?;3_]M#$^_&'; GF@X6#:6/$ET]O7T"5DV^VX)WO
M!\$6@D!KQ?-F:[4+ JVXS);9()/XJLZVP#:1ZS,ET[^7U @0$FL*:$EBB87W
M0&(U;".)FQ0<,.(#NKN,NC-1.3LWP,X 7.Q^Q-&:MK<'=J<]&V*>X^W%KKJ>
M9EE0_$S\C@&C#R]V,F,/<?Y9EU7!)0"WX3*N/^PP\L;5V\&T5N=%UEP+UD-P
MAA@&]#5#\3LP62JT'^O.D*["5AE,<Q,*9-U4[L!ELI@$=R^*WMFEMSC5%+)M
MC?/519"P 7CYC'';-F=OL3A-M-!Q',=JNK5R"F+A3GBS+OJ5_7^@_<PLC5AO
MK#Q08U+RWJ\(!3#V)ZT&['YD#%.>R##J>I'CA"*>F&;JU;4]].&03[%N-EGY
MG5#2O"(FL//TFX$=Y&8(9D>MNU_% SSV:AXN^#460G+%KU+'.Z\F AW3J<J-
MR787N'N4D<9#>L!AMD[9 62VQCJ_O&T>9"GJ#/OO%?O!:S=!3'YFF1@5;4\A
MZ^OJ' &NZ@Z=5M [VVS0";&#]#GB IY.A/7!=@?:3!^]DX3C55OB%'<:"=FQ
M%65C+3AV9&[B-QQ9G1'3:/AQ5I30Y>Z)( ZF*9LQ:J^&?^,#!*338,/<5Q=!
M'N?++<%!-$]_#DC,UJ98X51;;?;J_O*8F0NE3F&FU@5$R4F 38G+GI@!E',+
MS'UYJ6U H6O3FJIM<F,S;<3\]'M#D/+.KI(!1"<I,$VW!F3&W\8H!X1M"%?H
MZ\VYRG&?ET5>!&E$GRH*/]&&2U+M5;P^XR89 $/'?5"KX](K(TTX3+/_FG46
MO+.X[ZQ.)*^=JJ_YVQ2JVNB!8>@$L-*QM\>^.J[1T\QO%H;EIDSH,!_-V45(
ME]F&>@'/.,WY^AO;%V6+&O>XF*\>@S=9Q4TT 6^NN&\!A)6BS@[*F"$4]BVQ
MP%5J"J68KR85P9NG.C_Z9@:X&K7$>](*=.3_,$24E-=O09,O3Q=FHY%WZ]<8
M8 ]]&(4PF-' A%#T33B/J,(9ZJF "0N1E>?.$ UBT/'-+@&^B6%WX$(^;%"J
MF38DVAV@NTLNJ[797O'X0=(+G.)5K(J4-2FYY)M= ?J$TVNX8=R?*\:E>,W&
M.]UH:H56O@M;K[LW(R>$(;-)QC>-;T8M'VD6)S#.H *-<G9P53O_=;9%.]*Y
M&8A,]:,JJ"/7>E@S=&:K]Z]-:.454]?'EF0O<0XA!45[TT=;'K9H?IFE19R6
M=&I>']S-4I73,\6 RPYB>L'Z7+37!N,;388\9FAK@'47,+8]Y&5B42<IN\BK
M"O(L;G!$BY:P8-"28M@-A"=]K8F6_?-YKT]A)OHDL\!;P#YED<49<^'>@/I^
M6@B/DF;Y RF"I)53AH >9A):FS 5?FIC4-E[5ZW 4 C5R;UVYRAOVP.(1K ,
MGW%4)GB^XH>:<+0(2+%[)$&:!R$?\BYV@R>:Y<$];;FD_4'%[?-]+T-@B'X(
M>C%/>K7DS051SP:8!4E%&4UKDF8UE\RU+<0P#;]>!PP?+8%.H)[E$N4)*XQO
M!M*Q \<OK!FP#<!+=62L6AK>_I@%5L7:2HFK6U-(77%;6G&&<Q6GKJ'>B1!3
M]8BBO_W@M&X*T\J*"::Z6HIL2J4XZK9?<%HJ?>WNL=MN> AJV-U6SP!UJP-
MPM0LH(UW8LW[_K3@.D,!F3A(<0%('=\LY,E#\JX/5URN)!4$=)F/'I\D0*/*
M 4=:\1.=Z&.IY]CR(8F?2NY.WV1DF85QD%P&92[/SV;6<7:6SQ9^>Y#/I."=
M,%-02O,(AGT]G@DMYYHHY*HGXM&"EOVY2HC([JB[*>4%DXHY8XL&9$L0B0P,
M3JB!C6G02.8L>FM%Y;P[2.R"DV+W"1?/672;ON"\X/D<7E/J)C['V^X">M5R
ME[V^TZ7)J<4:K$/:*GNGW[Z(A;TGKH\VW "*6PLH:TR@;6O#.V>[$JI#P7H2
M;@._!&C#/?;V,30?5(0F1G*U$MXI\"E.,T(IVYRQD%#]8K<(^E/Q47DG67!)
MH3V*UJ?8!'4PW==TS&-N-A:Z8ZYMS^5I?G11YG&*\_PRVSRUMXVG>1S580!\
MI;$*$Y(>")VB#V]&NQ=ZE;>$MLRQ8BY34[O>^Y\FJ?AC-@OIV$EP4V"<?R19
MKAJ7S&HN>QK;0O1I:=(!TZ=8 A4XU]W7RW):>R>:I"%U65]N(PHU7O&#TO41
MQ:JL$=M<[I9PZ;-RP\(=T\B^O1[X&I=$/M5',O3'![T#3$,Y4<'&#8L]&JR
MH!<0B4Z6119^OJ7P<715DCA=4Y\CSJ+E,W4WJL+FL2X <X*^TR"%J<4:!";8
M*H,A\53$PC8&%T0QMX B;@(%G9Y_FG* 50GY.A,M(/]-]4'4\DYI:((]H)U*
M& [-# BUM#JK_=@M)BAG#TZUX$OP)BXWETE&._8U;QG*93P;!7>+P#; N^5@
MG;1WQEA#%!S02@>%E1+*F=99L_QV(LJP0Q0A.WQN7/<UBSNCBP7HEBP:61A4
M,0,4UFQKC9.LT:JN6"N+DN#F_J @Z>^$5=DG9&6ST7)W89IU$;I[T8PJ,#AD
MC5/8U&Y5AAZZ.2^(G\66!<FB,C2FX[+0\[K<HBJ&=KUEK.2=>E.1*E?YA."6
MG7?F-=$>M&QL!CP*[E,$DHR%77),#U@6EC.4!,,F+3S)HAW/%6B94>ND^W]-
MKIX;^KM\6U:3 ,*@""AJ:AI>TWXSL^6IQNYQT95%5C,#@=]^#RM85PY.N*$1
M%ZC.PQ$4U?#.VTN1L7[6,*TXX;<?W65V7VZ>,)FOJEES+X\9RRX:RNIFD@%X
MNV3[P1?3N:49SZN2$1Y4QE*IADW2P9PO-V2$F@G(KEIW0.?H53A25JU4'#$G
MH6JJR<_'S5=7<5(RWV")PY)4:\AIQ*?(5_%+'&%AJV*RMKN)Z.0B=?-2:U7O
M/?]^>.6GW-GV6E2;0'EK [$] K[@09]69F#U3+S8.!(:Z(2^267BW?1.Q@*8
M^J>H,G#:'NJ4L84U[F;M5SDZ207AU;,>YK@V+TRC"Y!:J6EJ4R^U*/R:&0,5
M6IJY94&84MND.M6=$9]FPO'T>W+A]DAD"^L@^!Z@=6E/N0TT,-),7H#=76I9
M\#O#&?'I9@!26BCD'K2^ W>F?$_@!]+[SONY<S[:\ UNY3X]?PIOR)1@DV[*
M5WOQGC[O(\%!7I(=GS#U8E2(W%_1B,.K !NPPOH4GUJP26'MY!.\K7<%?$T
M!\7@5W(UI;C,\J):Z336E4(/:$K%2=#'5<CE@=>@77T!6F37@!.R,-2B]?<_
M0\%Z37C%]ZH"A1F V'DVRE5Y$=<X#6.L]?55PF[O$]$!'MX@(I,$PR<M/"%@
MEPJC@308QULHA\G%UBEX99+6;59+PV64R166L<K2WW5Z$5(3E4 =]4W,=S.E
M\4WV:CXN0#(50G;YD4H'$.6L@"K#3*B/TAL;@U>TH?\@<: ]BW^JK:,["B-Y
MP#DF+Y*4&(.GOT59Z*P"Z+OXE37\.(AL(T@&36CK3(:Z'Y70-SZ^[S);%:_4
M(>*G54*6*#S_A-ED0_C62DE8W]T$4YCLUO)\:ZW10+]6.JZ7%W@)[K."I\F8
MA4PLH,)Y'2EVA?-XG;*=1'80.$EP6)1!0A]N,6'1)=)Z.\P<K,H]2EF$R34W
MRKJ]GEE4VT6U84Z/OFG4V/;*%1[!&H3%11!^3K*U@@)2*5@UJX,HY JJ95$M
M[+4&;N(T+O!=_,)OG:8PX^XDX"8C1?Q/7N;Z%H;9B@ZE?\,!>:3NF!B%?X@Q
M6/5YA)*,J[TRB1)FDQUTKXVVMX;VS")<V44!,XQVU#(JF&D_8VRYW28Q)K0
MK&^A'<>:!!O5,*L1AE7%%DB%P;960;4.JI6\MF"^X5#?/I&NY;&.6D%8U6)
M.:Z2:KLE:^2;"P02JN&EL0PC91D6H1Y$$5@UH,1G$^7KY:.WMSG7W7$:-;<[
ML97M^:IJKJ,XKFF:L*IH*FSUU=7-0$/=P_96*[:*S!/8-5:\5&K=Q]YA.JEG
M-QK+O(V! *PJ4J"3> 5\)$F8'*V"I\+/&(_3.",\VI-RB/Y?7-P$[#Z+8B<.
M\6I96%5@!BH,\%RCBEAE#8'KH%6M!*UF5"Z82>/=U)+>&:OJJE9$E29J5+VZ
M9+:CS[L8:Z:-+%?*0<1'1;!UY#8]65Z(/O%8 -:G5Z 3]H8[,?[9_7B^5Y@M
M..&(G1>C\Z(0XXB?'6/9--@0-U])1W$[-5CU,@FSV$(JY>H\[+96K_Z*:P/\
M_(0W7Z"]^*=Q$ZM90.ULWN-BY&_R7>-'_%9<)%GX61R/#K,'J^J/4QAA+*NM
MLGIO??,Z:K"VC-@A/^:FMSTLLUYOV2/V L3?X&<=-\B?%T$\R,UTDY&F*/23
M\/O/9D\Y7_D45WBGZ<.BQ'[@I1GDF1E4V4&5(40M=92@MA WAGYMS'FI[_KT
M=GTNFT)LDLSU4G$)E6RC!*MF)R!6W".!MO71=7YPL];N)Q[S-%1W_5-NZZ#F
M[\)#E:#4NJBY=Q_UBK;SEX"=E*R!LRLC:=OF9?X8Q&)#,FI JQX[N&(]-7I-
M!?$;OAM-M*:J/E<;#0._S;*CO0E85;HW?N5"9+UNWZQ'IK6SHUZ3]![-HUA]
MD<C JCLU0'E\3R/J>YNZ74U]8 >'YZN?\FI#EG(P*2.6K[$*:%C0,C BLMV)
M+0\;2R.NUTMGJUU+/H)]6#5^FL+I5[()>P]KL&5>;W&S)L[?Q>:\5>C)EKV-
MMW/<O(__59E(NE=ZWX!8/F>D8.LLQIV(@21<'LA@ZFLT9QJ(=M<;?TL3_1(T
M<:+&&ND+PJT0"4I]?214P7-UZ,Y,7CY3Z/3OFR F_&@+6S%I,T?-7H(XJ2=5
M[(I)>;#"44S#JO*CETM81^!&:&>+5M1,E82]NEJCM82"QE1U21TU]L[IP_W.
M9K;0Q-<I(F!.^,(OE6K:TLHC<L+! >A>5 X*]R)H/1MH9X1A@\+[.+0@M'3Q
M-DB:!)F7"?5WXE6,HUG>!C*QY;V;)'O5NYX3;<'BV^$%T0]XV\8F6U2K>!*V
M5JF/V8L"8U>[H!6S#)L>[?3X"/00;;U3>B@+<B ]VJ4#W_2XI\\I@B8K<_Z8
MC69E^6UZ_5;UD[0'-DY>#[0'BR;'*8QX2"*M:CUH[/([S85):L[&)5R;YX,/
MO+EH4]I=TWBNRBX"_8;6B'XV9-*&18=]H!OF38V5KI^(RD&H_8J:\KSSWO/+
M*,EQO$ZK#,GA[D<<K>N#W39;[M,,P:K[ TNAW&2?KQ SB*J<%NRORB9JC*+*
M*I#-]6:-_"$H\/(UV+8.N&(%VB /JX[MP"JW#9@:8GJH5?2Z3KVD)<7\;N;5
M19"P7F?YC'%QQ\ZRLUL:WF)Q^+;0@55G]H"%)MAHLD'WJ=)%.5-&2:V- JKN
M<3FB2D3//0U%^U+(P:HC/4CYG+T61US>[W;/L).GWML59@?GR(X^>0U(I.K[
M;!5A5=9$U()_,QZ^F+?;6$"-"<\1T<W*#=OP9RM0.)^GW:_W6!89:M2!58WV
M@#6A#BRJ@2^4L5S(:7_)*\5^5OF50_0LC?9NJ,<P"JOVCUBB2>X.6QB5]0#G
M$:@>@-TYR]#,5PN"7^*LS),="W>\W6S93F1 XM4J7V1)'.[4\YI]C,!BR0$E
M&+.B,<5F,)VQ*H:T,H=J>^C7RJ+OF8Q5X?>K]'=8RZ9JI2[RMJO6+:O6N*K6
MHC( X:PM'=/8:0=IS)>AZ[>V *MN]X6O[-3[ ?ZTSH?Q_?2'UISW5"WQFBVH
M\^E!+P+Z[NY2D[C%H .K;NT!RY*Z5)KU]*FGBZBRU[K[)2.?^7[*-BZ"9!;]
MO:PV6H4*4PG"JB4#RG'5U.(HK.11T"KXJ(OF",%EMGFJ#^VQ'G^=QO_$T6U$
M4<6K..BRS=0I>GD^L'8/@CZCGR@:91T2JO.$[X+%B-,75+@FI3G+$7:O1*1]
M)XI[+VU3_-2OK6(<NQ>SY^S-;5 #>JK>[66 /^:W%!.>4;$%.ZXJB<YQ]>(O
ME[H6I7;"X[1-21>T2+CPML+R[GE=KY3V'X0A*7%4^W*G[8D-+_]R^6U9<C=]
M=;U8/GA6H6E.L;Q[FB\Q>:$-^0&_X+3$5WB;48?VI-R6OO'+);2NN$Y8G%<
MJ!V. $45A'?/7&/,U"E?]N7RU3+:JDK4S<9_(7JJ95Z<=N>A^XQF3.VQ.BCZ
MIZ51%!3X;!375_?$[YZS%W&2L%O]>'P;M3E?L14@YL&1;'7B?M?P[B^7T78%
M=](7/]50ZA!$9IZV('[PE?O.')"G-5\Z.A09V2WHO)2M:]89]3\269Y1K30L
M)ME %=?G5RR'=HZX$,O;2_NZ,QY_OD+%,Q[%M; >BR_E5V]H;R/PE"^_#:FK
M?8[\*LZK&^/I)[K87:?1IX!\QO8Y?2;9@57[AQ5"%U[8V$-]@^ABAZA)5-D$
M$ES8?8/J2!#M"&=)DKTR!M]DY"HKGXI5F=3I3'+:S^+XA7\.6X(<9!<J88Y1
M*%T2J"H G0\%0?.&ZG+M^AULKLE?PH:=^BU *'6/BV8-=3C>8LFBGTX85N5;
M(!5.'=!FWJ[ICH9\[&L93.KP2"9(<CE8=:('*>2S:"/_@Z+JE7ES*3+T=?P[
MC?N5HS*-,.&#^Q;3,E!$ZZJ99IMM@NO$BW4]UPV3C_559FR"M^R2G.HW9B2*
M5RO, G6HLX"+5XP[]9(V]QT["YG1:7E4>Q<Y^KI!][MZ@E1-UWLNYQ.[BO&,
M]Q'X+6"PSE"3#Y*=ORSYGC(M*\Z+>,.OJBTRMAU62=!YUK9*.(:I?6KDZYA^
M$WM4DH_6OI0A#GI7Y'9?L_Y^_:T/X?-Y:24/.$C89V6!?/T0OBYQD2Q.Q:@#
MJ_78 Q9]X$JSBE8<ABEV&9I\N[CLZ/)C]H YZQ8!*7;63HM)%59%3L:M\UV9
M"?28H=H(XE: N!:SI*2]Q"H.[W"TG"T582=2*5@UIH,HK*8ULH@*(RKM-PXH
MR)^Y'U3/:G*6(R!CN=DN@S*7K+2:%&!5C"5::?;.L*]792[@FBCDJEX.4M"Q
M-@@IGD<<IAF/3U*=G%!)PJH?$TSA;$0CCSH%K^UG0>)\$WQD.-2!<S(A6/6@
M02C<S,E%$9?U'@K77!-*0;%(B9NRD^J^OB@#[.,K 2IO1=V2.B)C186]^&67
MU_-9&EW.YZI@T>%S6%]<#DX8!:[G?+)#Y?R>0@UH43X%) ZN<$+_JW:5E)*P
M/K\)IN#/,GG$%=A!./8O[X[3LLC(9D;HU)DZ%$GE)*A' *TTL,JQ@"H>!*8Z
MJ%)"K9;WT6%9E%&<S5XH?6)-HY%)0:L3-42Q+I@LJH2]-Y.?XXA0Y&D4IYGB
M^XLBL#Z^$M_XRU>"J)+T[)7B35QN+I,LC],U;9WAYT6[TBEQ3S72L.K"!NK_
MU]VU]<:M&^&_PL<<0 ':G#Z<5R=."@-.O$TV/3@MBD#>Y7J%:B6#DFQO?WTY
M0U(WDA*U=LS9\W N\,Z,/O+CG<,9>\&*.FRCE%@%6HDY^HV35O+IGD/2F)O'
M@HMJG]U/L#,A2XN;>:!6QDFMP4JCTCN0CQ.8J:D;P4VTJC3OGQTH-RC'3GM.
MA19-P7CMO3<HMB&W\*ZA4]6W"%%8^U>Y$RG<4J3?+CR3C"U"BQ4OOC$+G:"<
MVZ-.,O]H4E%SD1_A&;NGVATRM.K=#W!<\:VD>K8?L^8OBJ))\_=IE?F._RP)
M6K7N@V>=E:,<0\&H-?YQMY,SU<WN,H.]S0/'-)7*8Z#8XC+D,GL -\&M/7\'
MJ]+B:#%N:W9' YC[3IM0F5BUST2Q52LQ^:LR$V?"Y[="=NSC^E'6Q?$C1)!<
M[\NFDO#6^PPNW/:"^T:W)<JTR#T!N;4<T";8N]\2]NXO[WZ-VD$EWK*YVZ\?
MR[8<7=$\] 7HT&(M'+"54U1I D^_Q1U(G^0<"JO.1G;^@UST>[CQR-'B8QJD
MO=M1TJP5CQX! EQTE,O;1,B'L1 M#B80NH(ZH%.2DB51^SW?PQD*+$F://A@
M>LGH*43.2?4$B9.R39<2P3?M^R1I,3('TXZK_ 3^07BS2"/\ZDJ4D%P97)A\
M7-@BM$CPXK-/*5$0_;7BUCI&#YT*EDJQGFU@[J"H<6/F5>HE69I[JM>2H%7)
M/GBV/VDK%WF2/<AEUL9?WV,!6M7M06?/I$8LLI>"'+C6)7:SGL>J?V$SIT"+
MC$"TMNL"#.=UR=3PT_?"C;C@::JW=VEZ_T,MA'4<CCY!3H$?[W[DM_FK43+
MK:F8QF4='Z)48B)A1ZUD2(0R5\^=#+FJ=D#SU78G&K7"_=5,KG)GJC12-?8V
M9A,CA"U%J'HGP/E>DTG1V .&"1FJ\ONMTZ<>ME%D]4 50I2$(K5CJNLXJDJ1
M24TVX$PJQ^\HTZ.\4Y 0-]/X)GM,]$'?$QW(\3/-"@^IYDA5BY=]^S+?<E%!
M)O'ZJ/*,9\7=JA3H-])[@+LNH2W ^5&)KTE-8&07*R]CF1"A+UP@ZPH!32:L
M-<JT578Q>@(]-,R,Y?B=TUP>#RIIIL<Z=0BQ'@QUHF_CA;@2CT22BG;^][+<
M8BE4*+GJFRR(BQZ_-"%B D#:IRDJ3+LYCP5:M")XMF\CD8/1B>S(88Z?"56_
M"]6XOE78)244:W[C.$@Z@KVZ)0C5L >8=0JEQ$QN@EAMF!=<I+GLB1?;0U9
M+"6,,3!1\3,JA)@(16JU?Z6'X\Q0,S);;5IO#<.YK+:$"#'BQV9=#;69QHUH
M[#I7F]SK43R^"3&*]>Y YZ]YO:U_ ^*_$,B$(SNR)PV,=9$1K/GCU^@DG0C8
ME^UFUD*DCM0UO4_R[YC-I6@D'-W>RJ)ZSW>EX.TI%*\^/LEQMQ1R5Y6*XU7-
M#U7X/O8G?HY0QWZ-4MH-K3<L,""9=1]FW9?9+7ZZ=SIH3J7H[(+;>M&]YKV<
M^CWK>8\H@0$D%*&'2#BV-1FRWFB=UQ[NVXD*D^J6AWO!]Q(0ALHR+1SS@$FP
MSE.;5>H[X7VF24*=_:5*XLE-W#<\G/L3DSE-?B#QGF^IKT0[*;&JQ53)2YV,
MOO G"#6LGU4RAUM,6!,[M\-4ZP8-3QWE?S_(/V;NB^\Y'4+M(QAJP VA/E:%
M24=KQSKZT!FD;XK+K,*<'+*=W>S4_?Y?G2<?DQJ$^ H$:IU[0*A)O:R#_.:=
M+G3,J(X/H_3.:Y$65;H!:*:LWPNA0V:ZJ%NB3XC(DV"/:>U$6(_AQ$YIW3.?
MF,6[[*<QEX(PS*?57@T?$X>27F%"9,YC="_,M$H[7VJM6$MT"4- SIE+KOY[
M5=C1V#W[IUD]0FPM@NO86:$2>V/4,7ZSL< Z$V1(-(DZ/,X:DPJD:7/A#.2K
MITJ&IY7@D*A\8BR<TR'-E@=J(&%:._(UC5TJ',C;@W6_,VR8)FD")P$'TJCF
MO>XB(NK2TS\1K-(CYL JMCI)YHS#VVF62+.]J !+9TEM5-W#ZL2?\5WO[$J
MUSZEW,D>AP^?A]G0PAI$D"G2+6)9"0*;1&NT?05K'HQ#VXC?)B!SC5RBKT0)
M<5.V[X_?*S@MZ89!N:EZ\#:#<&U"S)\ VAG2W1A@MT?V!FQ(OG_IC_W*SL##
M\C*K-NK&28JW%TZ1N)>C%*;B6)<Z#:))7<C5H3R4TB1(=+&_1)\0_R?!MEY8
M:R-PHJN%66>G/1/&AF*,4:$9-@=5;26J"9&G3*,+9@AM/3TJ#,FA18X-]7$E
MP4/"47#EO3]XK@G#M2FS-P\ZA$MC)6%H)VD=H=$4K3E6M;M3YUB'-B%Z3P"]
M8(YMS9S/' NA[U1DNLDQMR=&B,TI=-Y>*6>_5CIRY7\JQ5=^K]-=W.S\ST0F
M%0@2,HW32PVD'^KT@*FH;T4\@T7K]G?2^.C0)D3@": 7C(^M&?KC(^;4DO]
M WQ(<XZW%) 7&4)YXTJ\V [_T)-<859*>R>O2_KQ2:7*A1"[*GZHTSGF51$0
M:H.1"NYJQXG:*'7V$]9]F2D)6,F-_CA04(B8XQRFW_@-,!5W64>5!=-_GE[1
M%E:Y06#&^N8>O*I[1>R<75^\3RS\/B$WU"C%_EG]@>B '_9>U_'LE4XSF0#G
M>V--RN/TVUY^O;IIZJI.(;W,G9.!L1 E KS8K+>**)FPGFRD2E_#7-2((S8>
MO!4H%#A7Y7N%"9$PC]&*&ZTUV#>5-$<I)4RIQ7* -7M4781ZE/QY2H[08FX2
MGN7<:H0-!XH1"CWCGVG><'-@#L^_/F.B]]E.XM&CVE_FX,YU'=1/VIL%X+&J
MF3(2+<RKYX''!UQPR\UMF@G$?;/K';E?/*19#M,B)%-.<_7ZSR2,;R,']_E_
ME0\2:#BO6TZG!^=/_'"L(T&,#>%["]W]2FAH=X :DP6WC:-'*>?V$ 4'MNY0
M<GO9"'B[@YMZ;&/>;<*4$B$:P[$Z$J)N_ML[L-TRI:N///1L0) W_P)W7NM,
MF!N!74Q=E+4OWVSA@<9=6?"O?%,^<'&\*K9?TL.@D_FE"' 3 ,Y*2:#$F9&'
M,1+314%6,-",P$)O7SK#A%^2"!L! *TU1J="BI6+QU3(G51>5GQ=?B[N,SA!
M\_ R)4N$F2"(5K1@5&*H!8Z,Z^R JX;/7U97>*(H?VCP;"4^7VNQO1#"0]#@
M1R*,N#'9F[X4NX84A?7V01_KQJSM;DJ4W58V$!W8[O<4(-9']'5.<_>,/Z5!
M8+NU$*@]TRNU-M:?461:DR13QB5@.6-&DT"/.A'P8@839JX4T8/"&(Q$K/$V
ME7OTVZS *QV80^\*>"][A1E3=AD^;5!N[/JH:.C.+G]K#GRK0Y3W?Q@^CW"U
MCU<%0*B9Q2GWN+4:%*P'(V$=D/9MP9'I;R76^Y38L>E?LB8]L>Q?^!-_TF8X
M%2M_MJ&A_?8H&M:(CJ;W\6D#-MY<\]>/R/?,&H.(OX]9GK]"LYO[U/DWO^ 2
MOD(S5#X4!E&T1WGJI?818Q>[VM)0@E 3\ "S7\9IL82A8.R*AM-2W5XK+AY\
M#QQ]TA0)\(/TDL%:'6:48F58RO/R,95BGTIQ63:W]:[)[8@54WG%EACX\3<R
M])V&VSJHL4-SR)6>,8T[%16NBL'-4.PE7UB9?Q=9S6]V.W?>K64F"/774Y$_
MEW*T6.YV,3P#P-/=SN9L!Y*8%29P1!2.T7%!ZU6*%G=2X?D]J_<FB3P"PDEZ
M8K@-4B34ZY;A]:86?Y3JS.@G:KG9!ALC.]ZZ"M^NBT/9;16(LVKC#&6SU8P5
M)3 KY!!]G3W *Z!:(LYZ.Z=-<V@PT^O% 5PY_C=(*SN(%;C8"B%"GP'>$5!>
MZYMNJHR_1>MX#F;LL;[!R#%8P8=O:N!UR1$B<!*>-[XJ2L<>)2_Y;7U55+7
MM,T?4B&.\ CO *LL-Q-^>5*,!,"TTHB5Q=W;-1<'!NIQ]NRXT!JTIZF4&3Y!
M*BO&67S>SK$!#7B?NXN< @,:!;0):!*?T[H1N'[]RN_;E^$KD4F ]VE^57SA
M3_7ZD></_+.<;O?N%)K/,4BHB[U,.>;ZH+9\3-@?/!7LIHAU[[^HN(!U_5@^
MFWYMYUQ9'\-?2+94/1NR]X([KXI/LW36A \*L)1R4#X7TC_)BGX1SL'0.5,^
MP+^0<= E0/@<CT3I":SU>'M[.!FZ!L>A]IS!. ]=-CQDN;34!B&B3H9N^6\K
M0PPM]8YL$KCKO>5LE6;;Z NDN=).K(D"5<^(VKF5SP)&XZV"@@KI6_@$*Y\;
MJY/+FR6\1ESJA!34M[H)U3TS7B?7, MHC;B>F2OF*6R>$8O/8H\29<$\42=G
M,2.Q-@+\+LT_<;<_5/LCH=JV,5GK?Y!@($*@97_-[O;US>Y[I6ZUYMKW2)Q0
MO8>@G&GKJ/:VW+V5BN:.+MW57%"[F^N7=92G>H[ D3A1 GTH9P@T:I$3UNAK
MPP7)D*<U")$4"-3R<%!JO;R59%(D6\DXY]F:42%$5RC2@$2C9 B;211 ,R]
M2!J G@S[MV0@;?*:78.=_SBJNO^G:_E_\L_F3_)?MW(\E'_Y/U!+ P04
M" #1HP9=4SW ]@-6   WBP4 %0   '1G;',M,C R-C V,S!?<')E+GAM;.V]
M:W/C.)(N_/V-./]!IS=B8S9BJKNJ^EHS.^\)^5;C."Y;:ZN[SYXO'30)R9RF
M2 U(VM;\^@/P(E$D+@G>$G1K8W:F; ,@\GD20&8"2/SG_WK=!+-G0F,_"O_V
MU8>OWW\U(Z$;>7ZX_MM7/S^\FS^<7U]_-8L3)_2<( K)W[X*HZ_^U___/_Z_
M&?N___R?[][-KGP2>'^9743NN^MP%?UU=NMLR%]FGTE(J)-$]*^S7YP@Y;^)
MKOR T-EYM-D&)"'L#_F'_S+[X>OOG=F[=X!F?R&A%]&?[Z_WS3XER3;^RS??
MO+R\?!U&S\Y+1'^/OW:C#:S!A\1)TGC?VOO7]\7_Y=7_,_##W__"_^O1B<F,
MP17&?WF-_;]]Q;];?/;EVZ\CNO[FX_OW'[[Y/U]N'MPGLG'>^2&'S25?E;5X
M*Z)Z'SY]^O1-]M>R:*/DZR,-RF]\^TW9G7W+[*^^HGRE)['_ESCKWDWD.DG&
MNO8S,VD)_M.[LM@[_JMW'SZ^^_;#UZ^Q]U4)?H8@C0)R3U:S3,R_)+LMTZ38
MYXKP5?&[)TI6?_LJ60<Q:^CC#^]_^/8];^;?SB.FGU_-> .,]GUW$^*&T3IP
MXHSK;_B?ORF*?M/3E\^<@*/V\$1($L-Z4*LR2$\6#B5A\D02WW6"%MVJU>^K
MCWP@D0UK.;Y;W6WYV&?:%<]#[XY]B_)!3\D3"6/_F5RS*69#8%UOT>P0$IT[
M\=-5$+T ]4!2=8B>/3PQ/I^BP&.3Z>4_4S_9F7=1U,8X?6VAS$8-]B5%OIP!
M>[@OW-_XCWTF[8*2F F7#0$V A[2S<:A.X:"OP[]%1,X3.:N&Z5APM;O113X
MKD_ $U>7+_0EY]QE',9^-L1A_3ZNT5<_KL-GAD)$F7"W)('UI%ZGK[[<$]9N
M2N(E=3Q2@!_?$Y?XS\YC0,ZC,*&.F\SCF,WMC+/R%S>^\^@'#!FH"O3RH?X8
M8!;+VF??W7_O<Q1Y+WX '(/*!GJ;V]+M-O )O?)#OKXN:+2FS@8XC4GJ]M6W
M"_((U-R\9'_?I4QA$K8>YY+Y3G#-[$^:9E,VH^'*\6EF;7\A3IS2?"J']K1=
MV_UI);<PELXK=$P=5>AO1@C8"NBQE<YD<!_7Z6T$M+4^!K0XF%&X\9-2)?@T
MQ18KYM:"P5(V8,.:/M[:WO\:WZ4W2[X0C2!U^9TA[!H3&43UAK%Q3'HEKFF1
MO6,B3(^?&\'V,:-)VTR?MH9)UZKE<>T.LUYW^<( -HB9-C2J#6./F T^4<WA
M;!.3OLEK]]8_]XEX:4#X(A5YJ9O\ZE#*UJ-=.;?L+DCB^ &TP_#F;%C+B\[<
M\D[R,37\JM[\X@!,IM1]<F+FSODNF0=!$65GJT;L>T7TDBTU8;PBE!*O+<$M
MOS*$/=..1W4+_?-2L5E:8BYJH?]^7OBQLUY3LLXX/-L5YDG+/NM:Z[__GPD/
M8VR??)=OLM%-]N&6O5>WU7_?2U.0H990_S'-,;L,O2\._9TD+:6 MMJ_/!*3
MMJ4<NM;Z[__Y$[-?27P=\AGNA0?)KB)Z$:6/R2H->I.K[5<&D+?N:U1\C+;"
M09JTR'-KMY@,\N'^^65>@Y^0=P%KWJL[9[>MYQ=HJT/)<R/Z\%6:,/]GOHF8
M8?^O;-Z^?-V2,&X[2#M]:@2_O)W>&C4X[)Y%.P&@;?6O>S=1N%X2NN&1A)8Z
M)6QB",LS(<Q;27('O-!-/C(9VQ<D-]#/H[BM%,;-]R_A%X>-P&P6[847;7,#
MS&39'/*%33*;='-#N&?E[++H3=OY2M]@G[&W=J-77', =,NP&/MG1 EST<]3
MII:AN_L[\=:M;1MPLP-X.8X?QC<1F[3CNU =%OROU*%LA#)[O[6WW_5K S+*
MC2FF.CL_7+,5.,W.Y/0P!9BWCQM%;CO^^OG6$)[(9AN%^1&K?>"XFP4':G*
M&'E;RTS1P!"1AVH<O'6@0=A(_[U]< *RC'KIL[*I8?8GVKJ8ZC;Z1_G2H2&;
M]N(%H=E6!(]\N]RH\X,T:;V60%L=;@^FI:<!:&>$\R/M.F_48#LIREL0V?G\
MF+A?KZ/G;XCK?<,EX__(1,S$6SQO+_S8#2*^I#0%:+20B5"K-&XG?_63I[GG
M9;L%3E LA@+5!W1=UM08 F7[AP:]+LJ/T;6Y]X\TSC5T&?&EFBW+62S%H+N*
M-@87@4&5!@Z]\>,D/MM=OA(WY:/IG,W9ZX@*SJ2)I= V,Z8@IGHNK#J&\K08
MD.-V<,'OAT3A&0G)RF=S\$%1#;JL:F1P(2YI=M7%?-X65!R\L\P;7S-3_YZX
M_#Z6\)BBN+."BH-W]BY-LMN-;$4V[["D\N"=GK\XU%OZ&_9=<Y605!ZGT_$Y
M^QXS^;^$6Y]_W:C3S<J#=_HZ/U'!=Y9X#((?J%G+3JR+>ZYJ :W[<7*VNPZ]
M[C(4S8PLR/YT,HW &J1J8?#N7Y"5DP9PI3F4/^[:MG+NZ8;]XJB/Y#4A//!7
M]I*W!+DO6[3A)[QX<?OYP^P=ORJ=A:+8/_.215?*S@21>_3][!A21 $@><3/
M06+_.(#$?O@M^]#\,<[V9\N6 N>1!%G[O[$RM2+?C-"K$HDE:U'<J>,2]3Y5
M:9M3=Q91IHD,Z[(MA[I'9#5O6A<EOMEFUQO?N4]^L.=Y1:.-#)T"B4C2T2I0
M[!/CH#EGW_=X'ZX"9RV&LU8$B.<'#$"%TF A>D%BE_K;W.M2 GM4$HCO1U1\
M!;*-#',Y=N[)FA_FRN#9WT96SPN2*D#@O\6<*932(C$P#\/4">[)-J(:X(]+
M O'^#A-OD6Q(,!?;B<$.@G2C,!#L[S'!EDB(A'=V9CN+34( ;Y8&(OX#JN$A
MD1$)\H<G$@0\1.*$("T7E0?"_B,F['(Y+0#^DA^MOV!+"QS[2A4@_#_9 G]#
M6B0&%H3ZD<>6= K OE$8B/HG3-0E$J+B?1EZ4+3W1<'^#S[8-?&0H+[R8]<)
M\AY=L=_%:K@%Q:&0H_B<6C%18?]OXE PZ)7"4,A1W%"-B",#GI]TK'1&.:O(
M2T,A1W% =4*.C/EEF/C)CN>PO$TWCX? Z3'6S5)0C%&<3IE0*-B6D88PX;DY
M5?C62T(Q1O$U5<*AX'Q.^/VGX#KTR.O_)CL5T(VB4*11?$RE>"A0+ZC/;Z8_
M^*Y^TFB6A8*-XEFJ!41!>^F\7GM,JBP%  =)#[JT"A1[%+<2)"X*!?SD--U&
ME7#Q.3^W3W?GD:><TC45H72@^)L&HJ.0,O<\!E=<_,^-'Y(/*BJ$Q<%[1'@$
M*,2T!/:/9K!_A,..XH=JQ;0$]F_-8/\6#CN*+ZH5$Q/V<_;/.[J,7B0[T-+"
M4,A1?%&-B)B 9RO-'5W0Z-G/D_SK4&_4@$*/Z**JA455^'R1AVA[61**-Z*[
M*A8.$^=%%"=.\'_]K<Z2%)>'8H[HN*H$'3O F//.@Q:RHT2U(E!\47Q5H3AC
M0\H9IL21J^]Q"2B@* ZH2)B1\;R)^-['4Q0JX['-4E!<43Q)F5!C3[S\*'$L
M'?J5/X-/L*%,JW4Q1H;Q5^HGK ?\_F<:%C$:R:Z8I"@47A3W3RG>R% _9 ?Z
M^<7:+\Q"I#Y_?D6$LZ@<%&049T\NV,@(+RCA3!-F=F?GN/A= WJW6LEF7E5Y
M*.(HOIY>4%SDK^,X)=04?T$M* LH;A]4Z+'G&>+R[%2[#Q\?E_S&C&26:92"
M8HWB\LF$&AG;VZBXG?6PVSQ&@?QZB+ @%&$4!T\AVL@@'_5##&^M"!18%,].
M* [2G'#YZF;)9.6G%\0EH0"C>'HJX=#FWC5H[ET;SKTH'I],*"1L\[/A;$3=
M/0;^VI'?)%-6 -^SP41<(>K8]_>R*S^5+.=7[!]BV"5%H8#C7)%4B3<VU*GG
M)\3+N[3/NW=X4U2"NK86E "<.Y1 H5'"^[^2(/C?8?02/A GCD+BY::^*L(O
MK0)E 7$/42,N"@6_1$'*4*+905 J&0.2HE#($?<.)>+AG+W,#S7OUY[\_7D5
MXK(:4. 1-Q'5PB*=3TL([[/_3"Z<Q"EZJ,)?5@.*/^*&HEI8M//S])!030Y[
MK2 4;<2CL$+14$!^V#A!<);&?DABY=Q2*P@%&?',JU T%) O-X2NV:3VF48O
MR5-QMU,%MJ0"%'3$DZU*47' ?SW<(\_OORF1%Y0&9R= A%TJ)%;:C?V;>@\\
M[9U#):BKRD-Q1[U8*1=T9.3ODB="J_93UIEKYK>I#CWH:T%90'%7H4+CK*V5
MF_S*I?6H'!1O1,=4)!C.G:GT,?#=JR!RE';Y43$HOHA>J$ L%'C/G/!WFFX3
M=\>3'Q+"MT_B_6@#.$3 !J"4(/JG1E#@A NBS89?)HK<W[,4^'$EY:PR:*"L
M!Z4&\Q(G0' D*R@^7/0B'G]4=47XLT-D25Z3,_:AW]5&$: ZE!_4C$)@&% &
M#D^#SO.\.OD+.N5[%ZHQ(ZT"I0/1+=:(*Z#@/[]IR'+#?C%@NMDS)^"O!#([
M@U2V'([2SGZ<O9OMMR6RO+/L"V%,//ZO. I\CRO;K&AIEC<U^]//H9/O</Q'
M]QRU*R=^S&A*XW=KQ]D6V7R#)"Y_<U"WXA>_[;N<O529[ZXLHMQQ4R2S+:K#
M:G<?.JTD.[PE359^R 9ZGO]^P0B(#^G#X^*M"JF(9LWH!EQ#J?L==4:\' _(
M=O)6\S?A\-SLYJ&7;.03[GR)(HE%?6!U2WAMH],U@H$"5R]%XQ!;>;AJET63
M^'8 FTOY@GWXR_S55[!KTL;;H=A$ZDH":GR:+Z*-XXM.[0@$*\O:09NYLBHX
M*T4[)%O'I^8+D03M!/TORZ+EB%9@J@7_6-!>/8 V'-Q&(36@05(<+:&Q*1-*
M<=')*!X[U]K%]7) ^(="W\A$JA$B%MD2)HHX%Y201G%P=M*!B)& *V) (BHZ
M$>=._)2]=1P_\=<MGYV !UCF2?GX<>;4RXD!5@>G\!F4*!D'41N1+.'OX2FB
M"7^4^CI\)OMGX:3>L+ T]CIOPHY*7G0RBLW;^)ZXA"D.L_!O22+?URC%5]8"
M'VBW@!R(_.@D%7N\90]C"$6J.MBVF0E!>MG1Z>'C.F3-[EC?Y(0<EP)2T/^F
M4@L*1/*A@\Y?AN9]YH\4GZ=Q$FT(S82"# Y092!%_>\KM;$ X&B@,Y>-Z"/A
M-+-8K2R0E_XWF-K.7D)9T6D ,M ._/[/7[99VS6XL[ZO"/NC=Y-++>UAUKTD
M2IP@*XG+V&T4NF9.J*@&V ^UP!&52XP^B!8TVA*:['B$(V$N&'>_MMS"5YH"
MZEI0:@:.$2A0CPRDL80HH9U_$-'0U:E6A-(U<*0 3!<0"73&+HK)F9^<V9"E
M\UK(J1I8JCI0G@:.&8!YTLN/3I'*ZH2,+6A]*'4#1Q3 U)GA@D[C-8,R7/ML
M)MBKV.6K&Z3\^.#G*/)>_$"4_&3O'4)J0RD<..8 IM $$W0"]229$S%PY %,
MA'5@WT3A&AR]%A:&4C!P9 %,@4)B=#8J#C9DQ9$4AS(R<$P!S(A2:G1.X'2T
M9V+@  /<FM:3,,TP@XXT@QU2"T((;X"6&]]Y] ,_\4G,G.SLLL=3%#"(8^YP
M)SM]- C> I3:P4(07<Z/F *%/E]6.@P^7J*J V5OL(B$,0-2 FT]@W)!'O6[
M3$>%H*0,%GX H%H/0#1D1,>]#%XMG!V/7#'M8K^A*9O$&]+I0WJ@1J"\#19[
M,.:M!4;HO&8&K0F'T@I0O@8+-!CSI9$=G9L+_]GW2.B5"J6?]V05H-P,%GLP
MGP/5LJ-S(XHTED+NM$3!:D-9&RQ<8<R:"2KH%)K,>ETFO,%B%\;T@.:Z";MG
M)COTFFI0<@<+A_1GREN\B]_8:JMVVVB_L5X1?$YY!/[:[SR*X6@]6)\)?8QB
M@CI<E4M$V[U+80-0%1@LEM)&!0SA01_!Y18%]UDA[,G*0\D:(W1BO#\C%AZ?
M&Y%(ABLBG)DQXB=P9E2BOPUC!T0DG+XQPB@=#9DWP%^;W8,>]@L&>+"I'W8G
ML$FP*%4LZZOFCJ.P,)2DP:(OQK0H9$;GHY)S37?AM%$2RL1@$15C)F32HM.P
MI,2)4[J#$"$J"Z5BL.B),15RB<T7I$_Y@A22-<]_T&5)2M9!G+'S_H=OWV<,
M+3_?//QVPUH.[AFD]%EH*O!"M3)01@8+>< 9$?3>DF$Q][PL]983+!R?.?+G
MSM9/A,^\EIM&L@K@R[SX=.A$L82;>Y(X_'##I4-#GD-U[KKI)LTRD/!C#ZZO
M,,(@=:&,#19P,&8,C@@Z>96N9?MV/ <T)4_\Y>QGD@?,;J*8A\GN5DOG5;D)
M;=80E-;!0A/F [$=5N@<-P5EG<V/?B]XMF.&=Y)0_S%-^);@,N*N/8^710'K
MQ3I[1X;$1IY4N_:A&C%82*0'/ZL+LA-VP'7^*BBJ(JD)58L)A%J4V/1*/W*&
MWT6&ZQ-)?+=BJ1RE^_VV:[K?V9^.OG)*_SMHA(9A?4>S[GJZI-K":(>\/G)J
MMPZ9?LT00K<#CKN;9]:?I\E31/U_'0:ZCLAF/>P<<+TQ*(/$2N:RIT,-62OK
M8">#ZYFQ8RBL9$O]=(="MC9O=PQH(/?*V]#/>G2,@YLO>:#*V.GD.I!H (Y-
M1,*7.F4E[#1S_1!G[2+7Z*-NA9-6P$Y&UR=1EJUMAF]2R:1JLZH-N'O8'UVP
M)6U\[WPO8WRWNML2FC7+XQ&R2*;8:?\.YK0?OC:+5K/#]V8,F5GVQ=G1)V?Y
M-_$?\\G[L>^^WH&75C@]V3/V Q(:[DZO])Q>Z3F]TO.F*#Z]TG-ZI4=^5N>2
MV4@T=(+RO'\L??F%%Y>6QO;Z] ^_*+MOB=\PTD-(@QVB>@L/(=V39Q*FY(K)
M)LSHIS5VP0U,^+4>0Y!L)W6?Y(_G#6+_\92'>%HUAKW]8\J8$=\J_-"Y/X_B
MY&[%,PIF)PL(??9=$C]$@3)H)J^#O2W49=SJL< \3MP])2:-XGA!HY7J-.51
M(>R]HBYD"J2=\.&H(OX5KB]?MSQ8!GC^3E$%>_NH"Z]:)-"GU >2'<TK^J>(
MD-7*87L)>F0C9?_?PA3)-)(Z <\/Y6W\T.?R)_XST7*IK8B]GV1*+A")2;/=
MP,1@,L7?<C)E5"IM5PZ775='2? EV^39]_IP.%X2?9$7QWX="<R46@Q+EC<8
M(W716_ Q6""F%_-#R<S4S,O;*(Q*P3X[?AASN53SH;0"^B-*7<C5P-!UZ,F"
MS-D1_B\D>8J\XXWS>GQ94!#]9:16>,NDL62*NXHH\==AGHG-K6Y2<*W@2G%&
M5JR,,A!FU CZBTE=ADT+N 8:2N5UJ&*A9=9KF;@KC^T49W.$YXQX P;UT=].
M:CWPC$&:M)%_6*?+^*P?IDRXPXFB7#GWF=U(?/G*K#/&'\.![C(83:\S#OI1
M]*>?NLP5(] Q83ML+W4Q-@N(=8HFJ(#^N%1W)9'",.GYZ)8D$,>I5@S]B:I.
M9K5(Y F/TC(G0WE?X<R)?5=.I:0X^I-772A50H!NO]=[=^$'::*Z!B"M@/X*
M5I\DU6! I^E7YC4\L0[-G]G:OR:W*3_J<K=JG(+7C"_#9M"?T^I":2O(;"6Z
MT$>#2R#&#:$_R#4 V3K8T.D67 4I$]KHMZU!E2?]&)<!/.A4JI(4R<,^\]#+
M?@IR0KQ_I/D;F?H44$-]#_W]+Q/2!6_A#$:!U1IV[L1/5T'T\G?BK4D92YRO
MF+M_3UQ^.<U?^:Y3BMM6K\R_@OYPV3#:U!9NJW6HQ$683"O/_M-.;4 -HS^5
M-HRF&( Z83]?@5V_V>]Z_Q#ZBV_MU6X@T">>&:UZ][J<I@_VY=']ZN_;W*_F
M;<ZR1O$O4%?NTN]%-4J#)JB%%NOE?5G0B#^9YYWM?H[Y$T+[,R1S9JH]YUG]
MM/*U:<N>M&A2(INAXI:(H1LAPP;VA^*H ^!F07ZLI-^EXY-M&C)),\]\&3&+
MEOWL!^2HW\NHM_$Z_)>QK]KTICICD82NC5F?8T8/\]LOHO0Q6:5!^32Q7)/4
MM;#OZ(Q&7CT7G!Y*=+XO"&/#]4N7>;[A=NN_LA_E="LK8=_<06(; *0%9->>
MB,QR-;/_/6>_]%4#7%\3^VH0&NTP2"?][.;QB:CC4['/I$ =>M1,6AW[_A&2
M!AF!.^ES166\]H[O1&V+U'-W*W[G/(D_R/5'5P_[FA.2XL#@M/!Y*;,#SUV/
M-P]V[F5LVI5@]&-A2 B[)T[ DZARC6/:1JC_G-VTO Y93U/9[,^K@FIB7[;"
M(-( 4G2S47]YXN>0%O+(9W&S5M O:2%-ZFVPGK11D.WAE0AG<&IOLBNJH-\U
M0U(;+8J3UA$F$7\^DUR0_'\K"!7/!()2V(+;0+_JAN>*&.*,OC8UNUR&V!A4
MA"VJR@S L-KH]^A:\*(C5H[2&YLIN!,=L@\I'[W75$._SC:  @AP>6/,+RC9
M.KZG-2?T-=%OJ@W OQB=-Z8"QYE*\LB(D8D@K(]^TVT =5 A]<:4HESZ%LZ.
MKWM\L\9U:<KZ>7C"LHW)H&X/_2[=@$8$!,FI;X T1>>"5K9]"A ,-4?6"/JM
MOF'418V9A=[$Y68;1#M"BH37+:<(52OHE_T&8%J/FH54'R^!+9E6-()^T6]P
MLV$:/&>O67E^LBLS8>?6#EN]6G(.;!#]1N  _!MA^<;LR(N4\(#<_B$$0ZT1
M5D>_!#B CBAP0I\=X =$Y=2:M(%^+:_/P]2&R$WXFI5$V/R 3C^W))1MH=_1
MZ^^>!  S]%F!]=DEQ%,<R+KPN5"A%]_1"YYXFM_QXIG![DF2TI"#E,V5<BWH
M\1/H-^DZ,-TX,=TO[OB:Y.RR7;QE-'>90)2<I;$?\B=6\@NJ'+?B+ZI'[HU:
M@>K#8.')_O2A!7J3-C(; H/.UZIK0=5AL,#C<.KPU@[(5N>_!X>_&LE^PPRJ
M9,?3MR3,J^*SXG:C3 A@U A4.08+,PZR=@"QLV]U:$.W01M0M@<+-0XW%9B0
M/;V) 8Y;'WZ'P8T]ZQ7%'+FWYZ;NCXGWX*8JVX*JS6 1SO[<5 !FUBP?/-]>
MX1;IUXFCPE#"QKZ@#4%?O" (L)CTS%_*=171>[)-J?ODQ,RVR;UC/=N2:E#>
MQPY#MN==B<^T-:!BV%['<<H RIZ3?P3Z /4Z4.X'BR7VQ[T6&?0IFNGD86)2
M4M8L"25J[+B>.5$R%"8]+N'H]&%DP=5A[+">N3J8(S=AF_QRM2(NLT<O7]G2
M%*[)/5/<NY#+S_^?KU//3D"RD_@\GNTRM<["FJ%W_(M*R7V2N?S>KQ-\IE&Z
MY8_D^+&;/U="O,-K)7+ULZ%O4+4>+#S9PF>P 3=+%KA.0B\(];.7U6HG!@HH
MJO#FD,M5>>Q^0-5VL,!I"[7%X6K"<[<=L[2=\_%@,>*Q%;O[S&NFUMML(#$I
M:7)2[E&I^^VC07:R/ZAZ<XQZ4?#+$-<]>TBWVR #V@E*H*_#540W.=?Z;+W0
M!J J95/4VQ"=@?+*9%Z@XWL7*>4ILS.]N8IHF1@[3Z2FW*S@S1BW B5LL*BW
M*?I1!V$M\1/*#O*^,_]?=5"Z5A#*5O^QZBYXUP]%"Z6W@)7*52PM,<VR4&[Z
MCR7WR8T, W1Z]@E=RLWJT-L'R;*$((!M7'@34#('BS>WV;TU10B=TRO'I[\X
M04K*3'WZXY^**E#.A@L*&Q,0064;U/0HKBX7%U#9K%$>+<V^G^=2E-@;L*I0
M9H8[=MF6&;B,4H9P7Q_)GAU\B@(&<%S;"#YZAN2'-L^05!O_=X=Y5'^=Y=^P
MZE62AR1R?S^"P.AY$E5U)'>N[-Q2?<F^7DXW#!LJ//3*IF>F[JK5)*IF/D3F
MXJ;^C*2"CTI9RS@YTB@9^)7N5^]I(Q.0*Q!_CRH*^00U?_4A7(BK39$6L225
M%VF0-GV/NW41;1Q?\9Z"I+AEA*B4K;Y!*A:HDH@;[;F\311F4_ 7PI\J5@2F
MFT6Q'T)JPX148G1':,DW$%.ZR_J6=U/'B:(*]DM#;;C1(H#.T=SS,E/?"7AH
MY#HLKE?J>-)4PWX/J U7("0&\E5OR-H)[AE&E+ER4NQY46%)[ =YC."62F')
MB+@GB<.?5;]T:,@<:3D=^Z./XO+8S^6T&0-JV=&IF;MNNDFS-".RAX&U$Q>\
M">S7:EI-8J8(H7/:])95[DVSK#4F6\-5;G@T,D$G?] DBYC%=VD2)T[HB1]Z
M*5%H%K7&L-,R*!-S\@0*[-1<6"-+O:QBC?6G(U0K]N2)W5^5JWB)<D[%I:VQ
M+G5TJH2=]$64(SW-]M+*/33^2E2>00<X4J6UK3%7C0:M!HRWPWH^+^EWDI65
MK+%HC3@6BSZ0)RZSFODC+.?9^??KL+*C7<E/,W]V_*#82^7I2?@!S/VC7V7R
M3-DK:L-_%OL)13WWX^#0<6&W(5>Y#"3YRV+\H!3_*<CIWK\]E.786CJO"_Z4
M,?M#DN=;XS NHT5&JWRJ&;D;V(]!@B<O%'K0_?@%C59^PL>I7&.J9;"?A 33
MV11LTI-'MJ0>$BD<':W,9E5-^$5=%?U11[-P# 2'2=N0*BEU'CZD+OIKC+WP
MW=7I'_P]Y?[,HL'M3PO>5AS;U+1F#5:*5)RW_COQUJ1\:7:^2@B])RX_:>FO
M?-<IK1'GU=SN:_<5]*<7.]MU7="=OBG1>NO&X*[F<,\N=MB]>3OW*#OLWIB0
MB!\Z%';_37#8YP:.":>6A0KK8@S$K6V7'_)0P!-)V!ISR(Q_=!/BQ\%N0LS^
M=/3YT\V(82;H!?5=E6]>*0,<O"-<\C._"M$0=?2[1YGD,7&_7D?/WQ#7RP?@
MXGG+TRD$$9MK2&V(??KT_7<?WK-!=2C!?E@XN]ES/&,>9G;M.W1)Y>_=!TFU
MA[D.N=Y!==@//+'H+W'E\X>O-^;4BCZQFJ"*W8<"0(+GK>PR$._F_J_(Q^BA
MD!UK_)$$_5[YT2-[^4K<--L986-U'=&=Y%X)*RLI:@'F->VH "OI<Z^W1O0@
MSX.@WA%?<;R755'7P(=<J385_-5R'-:?,5BX9I;^L^^E3B#7\7H9?*05REWO
M;.5\W$A:?>B!3IL%)?&Q%6O$L?H*.CZNVLZ]?RPC'FV2:VVM"#ZP"J6M];5R
M!' DG=UW0*.QC7+XL I5X5A=&[T>5UF_9#XXD:OJ40%\1!6*>M33RM'&,>W=
M)7-0S@+Q4<U*[RO%P&>H^]]X[6S]-J3M=1]%C_IY]$ "PA/K%=S?.AN)RR$I
M"D:__VU0)8Z1KN,H>/-/'RS)N]6*>?LTO@HU6@^H!N:A_ZU'+<:1B2 HO"P(
MH5GJ2/[2 H01904P%_UO[!EP 9!Y[-DHVWH^=$S+@K("F(7^=]@,6 #(//I8
MB)8\.75F=6U$@>-,>6J%P&CWOQ5FI/-"V<9'>.XFS+\*=OR^M0YH85DPWOUO
M4YGAK9!T9-@S1X'UB/=".[5("X.![_\XN0'P&EG'-GNBD/7EEBG#\UH_M\A+
M@['O_R0TT-C428H(?-:3RF $X2^L!*:A_Q/,+6A0R(TQ >V[!I^&Y%6@3 QP
MZ-@ Y0@J#@HK^>8L/^J8P\:LX<V6_^O"7ZT(OZ] M#29M@'F;1"OV9RW=AB-
M'LPX%N67.)N!*R<Y[A.M1V'8!IC(0=QN<R+;881.Y"U)BDS6IO2):H))&\0_
M[X,T.1[H5#4L5&/*5"V J1O$J>^#.CT^(U,HF !X1+N(1VC8 U<&$S=(?,"<
M.$-4T(===D*_[8B35 9S-DB,H8_!ID1E[''F/*:!0V_\.('L="F*@WD9) 31
M8BSI),>?\:3.L*PLF(-!0A&]S&>8 =!R'C5@0EL)3,D@80ES2H HH%^MVQN;
MZAONM6)0-CX.LRVO"Q*).]U '/=F6HL-?.GP$9<$LS38+68Q XKM>[QI*[,F
M^%D/'=;"@F"H![L<K(-:(1]&I%2Y27!< HSM8%=I==B*)!I_VU%^O&?_1S"4
M@UU,U4%9DV-D%+4'I5H=C_HXB-O;[G":!<>DHO S4X2B(Q<D=JF?A9MUYZ0
M]<",#.+4:HY'@>4>?3XN$\1_]_[C\T&-M+M7VFI@.@;Q9=L-$# :8T_P81R>
MA:LD9HN-_@2;K#"8D6$VV=N=IU5+/OJ.8K*;OU /Q(.T,)B'87;96_&@D=R2
M"ZV7-,MEHKS4^EWC4NL]<2/FX.WX[7#60A22*(V#W6S^XC F^&7RS9:$<=;+
M,>ZXEOVY6S7D:5!TK'*PFJ.,E/S[98<4-U[%)?&O4YBP4!TH0G'&O@I[3^+R
MPOH%^U_Y'19A07SP5>I3 5O8^Y$OQ$[S*B80X-.US#_"M<SJ,"()H1L_S"#B
M8TH_;31KX%[<:CEQ0T 8VSE;KY-"!GFXK%8&]]H6",1(VGD<H[[H //Z=K$?
MZZQZ:6G<BUH2*!N&B53,D5%_2'Y?4/>.+F-Z&2?^)H,I?^A PP"L)NY5+2T;
M)N*/O1ER2"4'F8 4Q7$O:FDYT J*-]W?1LE_D_T42G1# E83]R:7E@X3\4=F
MYHJ)&X6DM"R8P2;?)9"5Q;W7I45?+>*$-LYK@ERD9!E=OO( #F$68;B*J)O9
M)]()S:@!W$MCIJQ"P, =6ED/?_&C_-6(N]7?HPTYC](PH;L;Y\6(,W4KN#?.
M#.WDMB!9P"5SOO[)/-M]JNCL[8\S$I*5G\1&?.I;PKV^U@.G4+!P>6432."$
M10>O-UN>^I)U^-$/_&2GL51:-H5[':X355+&S6#$<P) 5H^J/.Z=N)[(TP,R
M(1M)( S4QVN4Q[TH-QR[N+Y@=3&)2,P<HGN2O16XC]BKYUF3^KBWYGIBT!PP
M2_:LLUWFI<^LA;5ZW_K;^KYU5G.65QTY#7/>Z4W6XQOUGK2DZ"@!%?[I^)S!
MPG3J2[CU>1\46]&J\OA;24K,JW$4A11C[T-/<W-4KS?Z+=(1\S&?MD@Q+L_D
MPY%]0*+91;E:,7RXX<HMEJ#7(P"M7XXXX\_=50]FS2GE^=:R9S[.=H<R"V>7
M!;BX$ =)0F_!?"]NO5]$&\</Y?P-\S5D-1 S*V1_&/E'3CM=K)Q[;=?LILB+
MXYYL,+( 5/*.O;%5]@>RO2LMC'NRP1A[*_9RR]XL*/$2N@F]J\ 1/856Z7BM
M*/*I!D/4A7)B:3L;?>=A[%$ Z/6RR*<76LPS34F18/][]'+H#W"ND=5!/L!@
M2(-:\K%OTY5KC[\A/,;#K8=?G$ ^%)05D(\N (D R(PQ*(3&/F1DZ"HB'VGH
M' _!'B/"GBFW6=0UD \C=.%CNGLIF3@_AQX-=NL'XJ;43WPBW]E6%,<]DF!$
MGTI>C$%T^4I=V6.299\K97 /"A@AW9 , ][/S-O/;MCLWXY7X"PJC+M_;P2X
M7-:1D3\>8[LOOR>9'IP_A>N%\-E75DE7!W<K'LH#3')+]N^NP]AGH"VIDQTD
MK@3&1)MXW]<W\8KJLZ+^[*B!479H:MUO$%/?K9&7'\6O2&BP)'03WZV6U&/?
MUQBRJO+ T3#$4-##7O4KM#*/G6<OZX724JT5 4(]R+1CA+50M F9H_O^+_FL
MH^&F* ,VAZPAYTBXL8_FI 'Y\/[Q^P^L*W,OVB9$$>"3%@9B/DA\SPASC;CC
M)Q RPE]5'DC!(+$](PKT0J/,_UD_E->$1>6 J \2R&LQV8B$1)QPEG03)L#Y
MIEH6B/H@@;K6TTU36-S91@>^HC@0_T$"<UWF&G0*2H,7D)1 4A0(_2!!M183
MCD14%-@O7[<^!:%>+PD$?9#X6@O0Q8*B8'Z1YAU1H7TH _:K+ &Z+AT*Q)6P
M]7H]?W;\0)XE7E4!"KXM7JU2;BO#:8LH\%W6WP6-]H?@JN&T'W7AM+*!F1-Z
M,]X*\5A!A,A:59(&4ZH0FZ3B.*>WBXYXU4YH?2Y -6LB;TI:CDYY Z$8>4(3
M]^LV2HJN::*C!M7MB>!UXTR!S>A38$+<,%H'3AQ_[4:;? +\3$)"G: QVWUZ
M_Z%Q Z@LBW(.^XZNG=#_5R;V>13&#&,OUX;06U0@N5M=,7LV='TG>"BO:,7S
MQSCA%UX%:EFTWU/S.&?4.W4>EH6Y#YBZ)&X>*DE\KVI5.\P^%"U63!QG3NS'
M=ZNJ'$RLAW2S<7@RO =_'687*L-D[KH\6T1E*A7--M_59YOL SQ);O43F6%5
M?(3_K?*9V>$[>SL,9ZIJ"JR??U1UD"Z^J!@$3!70^L@3@)ZL^A45(URL&*MS
M]Y^I'V>YYH5CKW%,X*@"BO:=I3&SM>+X/-H\%O$I-KW,XY@DE<[IQY5I.SAC
M3=!+HV496A]YK+4CM3;^S+"R8OQ=A\^LL8BR">*6)*(1^$,SLK"O\N=9R"JA
MZ&79B]VA;_HAIZR$,[X$70*,*G4MY+$$H*8V<" @6#%<[@GK:,H64^: DV*-
MC>^)2_QG?HZ>F=*9F-F\$;,)I/S%C9^G,Y)8F(WH7?F=/V?Q.U(:D/'L\*T_
MS\K&9_GG,@-T_[OJ%U$4NQ#ABFE'V:E?_>3I/(V3:$.H?K""&\ 9N)KN 08Q
MO 7D 6U(96UPFP)EQ4"_9BV%:Y^-L_U8_AQ%WHL?" -2/S47R;)^=73NFT#1
MV/+K3):Z>":+J&$S6,NJK&>@U150&7E,MB*SL>R"0;)B4#ZDVVW@$YK'I,B"
M1FOJ;$3C\5-]/)959T7=65D913L7SHXOX7Q682L[Y=E<].-.60DI$",D!!*!
MT55$'ET @NJQ%Q@45HRC"_(H<O4^-AX$RPJB:!;_LLFB)"N/,RZ.>P,8#](*
MR.- 34-M"&BDMD3U*7.?$O^9[#<VKD,F59KOFH3>_K);\42I^ (3&RP?FH.E
M;'JV;WM6:3RS 'GSLZS]V=$'D-2T[/$Q!G\GWIH?I7'9GS(/TFPD=F@4:[@:
M=QDTIKNTBC[P.ZM&8W;H#K(54TC^<O?2>17&<CY^;+J"O/PLKX#D#!4]-HN5
M*BIA.76-+H&\.54M]%BIEIJ&TZ8'P8IQ<D\")^&9\*@D[/FQ<8RGJ#(KZR %
M]O;]WBVI$\8\'7T4 CPT?4VL4*6X7T;#R*@1]( EC,)&I-(8)RM&6I9V\BD*
M&*;QY3]3/]F)1EOC&$NUVK__VT\?/_SXUUE1'45-\V_KAUF]'%+L(V%J< 3Z
M;900HR%ET 3R@!)34P^!F")BQ> YCS8;/RFM4;Y#P:Q1$DH.@WUL'$BIU-_O
MP!U:0%%-A4@F%J!A,SC#$-1)P%@T;0=Y0+:BN#9>VT%GQ:#M<L13<=3S8^.P
M2Q]'/6=_*O_U'Z=3GQU.HN6<USJVR_\;<A(-6']JIS[-<.GU6DZ[";MRW!Q,
MGKH6VI6<MIQ!0$!GZA"QB\$\J>J@9==IRY(> '2.+HN5<T$C+W637QV>-2TI
M!K_"A5)70\O)TY8I$ Q=R4K609PQ\/Z';]]G+"P_WSS\5KZKE9DCSWZ4QL%N
MX?C>]68;T63I4'^U @P@WE:[IM#2]QBSU5Y&2X;;+7FI2$NCD/TS?S@X-K1&
MS%M"RQ?4=E"V!6OR'D:64UOH7S0.^O;C7^0?/'D77<)Y[A/QTH!PRH_6D/(@
M]4Z;+;X,@QFW-#6/HRU65@SLZ@4R^4!M'.BM5D,><'^L"V@'92O[6Z7B;%?Y
MR6APFK3V%BZG=<'1BH%[?%5-/G0;9W_K%]:0A^];N;EV4*A]Y\Y3RM79?*74
MM8!^2L/T1ILI.%:,L!YNMTF'Y;>-P\6]WG%#'M-O_;+;/OF'[-'H_1;P<3D[
MGO?L=G^M+E._3T=W8N-&D3^MWOL;><HT'%;$.B4#O]+]P]NBZ 24IM0#6>?[
MJ,HGD#75IDB+6))>G_YN15#>'>V;QL?%+"- I5QU/HX%P7X2_)[P6"[7GZ)C
M\_6:DG4&Y!E9193<)4^$WFT)3X(:KHM2TD?;]_-XIV:Q]Y^$2MDX@M@#<NAA
M\OTEFK-#2.B<VYKJ^5%3S;+AJ9H?-9*@/QV_[U_%A"[N(WEWX3U/CTN9=F71
MZ9_#Z#$F-#/(K\-MFO =G-!EM7*MK$FHFW-'^+0=B@(:!#*]&0Z<CFN#9!/T
MV#>43N2\K+@H]I;S:".BNA>J0FV@W6J!SPYB2U >>]\9E3(I?NB+[X4?.P>C
MX6Y5>+_0H!RP.G)$3NX"U\_PF*"!SMTA;%@8=KD]R+3X.F3&WZ90UN*/1B%6
MPP:QC]2!">X(V4#3[*%799B3*6)"_<<T[\YEZ'UQZ.]$'ROGS;5N#=WET;+8
M23SK1FT9P^877^*;R FSE )Y-H!P?0AL&XW<%HUB6U,M1F]KZ 8?P>=/_"':
M^#J<!T'TPK.[7$7T(DH?DU4:-+=)#$=TQ]:QC3#3$=X+F.@C7KB-D.W'AY[Q
M@:%6C6&?!@2/\ Y06;$IJL@$*-_L;"2'4><#1-Z]_",E!CS,1&QM\1/F.SZ3
M1G?-#S 8-/8&$@=V !%]ZB[['JGZ?I4F'(4-=R3R5S(N7[<DC,%>=+]?P7;&
M^M29/G&W8H'@:<_D*T$C'1 OCCS?3SNYWF'RV2-O-%6+:J%GVS)(LP>1?W"?
MB U<PC!*\FQ$Q2"]S8RZ"[(BE!+O/(I-HQLM6\6>'F'T]2*J98OHW>J+DQ1/
M:=ZM;J)PS5_M;3<NH2UAQ[1:#E8SH- 9+O+8WA GWN^O[ H9P)ZM42/8,2LC
M7EO 8XFQTB;_J=R\::1PZY(%%=TL>A/I4+5K]YYB]L^($G\=YD?3W1WO%-%[
MO\<KF6ESZ+96;YE-N^%@R41?-2<%R'QV_/ FBN/K<!_QJSP*N2 TVV-C4Z&A
M#=[3I_!-O[[SY [&AU6:]IA49#)VW\1U\0W#(75!C9@5QD4E,[+<8FBDH:SF
M1T:_FO<V$B57MMNBS38*N<IPE[/H:.%MGI&0K/P6GEJ+1M$O\)FF6>X!0BO&
MY'$69OFP;.2UK.5B1K]@]]:2,E</O8A[:#XPH2U-,SUS6\0&#X8^..RKT5&G
MS%PH?0/8=JXI9:;R631C-K-IRV?-1KY0>4YMY ET8LFU]ZISZ="0&<\Q\VPR
M;/EI;I<'R?T@9<ID/D<:-CB)Q-O=T+)CU&ES"EV0Q/$#X3!LI-4J6\LS:V7M
MS<H&]VD#V) LVCQESNIV&3KT'%K/O5B\FZ<8DIIZD\N*!<*A,MB80/E&WTV.
MC;3?>:<)]2./?80F67D[Z2Y^9&A=QW%Z&/^F]#?;P;: >M8'&5#X43IEMQ?.
M[NA%/%->#_6QHW4]\UD'QGR<?\K'><BO*A5E[=2!MMS_]A%_D[=GUKE(O<SK
MEV&=\6FE/"T,J5L.#X^ BZRT1D[%?I*?%I^>[;]]LN;Z'_H7)':IO^4$&0__
MH[IOQ*H3X(&97EP280+6G8YI92"4G;YM2MTG)R8+ZKN$WX!RLT_PYR!\+TOI
M$H59>"U?0!0N;_.%^ZK+6WQFEGUG=OC0[.A+L\JG.OK"VABIH>2*J?,XM-BZ
MW6%"P8;=D:73ZR2C';GW>J))%59NA\LI?Q\FLY8D^XMI4F&*_71@B?W %MVX
M[(LD914KU2CTYG@1"3E,;C\X']+\4L>=M207E A!%<:#9O#3@/S@DI!93]'!
MK,I3:1!/FB&(5=/70HOTB*%MP ^5>YC0G%;SG_TXRUS#!G)$%UFT@)G W,+,
MW.(,1>\?:9PH4RAF6+1J"BUD Z2O$T+HX59!;G_9%/U!;B68M3*5W$UML+&1
M4.ZQKD/_7\2[]IC83"F=0SH!_NP"MW@/V1"X_QO'Z89XYT[\Q/[ -X&?G4 =
M=Q_ZN]A!@BY:,P !;TO/\J<)\I*'Y"MC:9OTZ]A[1#@ZIR'C[6I>EMH80>>*
M[V+O3>%KVQ$!;TK/%C3:$IKL%@'?OLIG]"W'>AQU4WS>_@1>X^+Q!I7OD.5D
MI!7UZ(.3R10V,.0#[<_U.AD7N=+.'/?W(%I+-@8&_2)06W[ S2<X N@34)?;
M*/'=/'4FV2;\TB<KMB!TXPL=Q;Z!4W\>J$@_OAU%@M#QIM:UO,@X2UKY+:!:
M_?2F5K-CH-^4#A7^1_4/11+8A;-3/S8W<C> FO?I36D>F![,\ZYC6&8B'&A*
MO.(B\!BFFK8+X!#MVUESH;Q,P)I[(/29V0]%"OP+LHUB7W;^:83O0I4),> _
M$A*3T:"C;&2^,-C0-V3-3T+U!OG-B3%PGX#*G/E!P"^,7H>7KRYKDZ>[B'E$
M;D&CU2C3C[8'4(5"C,N/CLD;= 1NR4BQ^.Q#4*5Z6V'W"L:M[RLE4>($J+?3
M6B)226(^CO;I/PC5PLG&YJ&8M];&9T(?([;X8M^=RP1FUB+/B0*X"_?=^_KU
MC6H#]MQI$]#.J,R?;SET6'_/S;0=[*PC97^KK)SM*C_)+FXT,G) 6[+CS=IV
M?$O3D4"%Q[^2(>AI8TJ4J[6XEAV4ME5JR0(@%G6@6QK="%0_-BZM\-9I&_(:
M1T?"<JN!Z)X0!U2U@T2-4@*XJHDUW./=?F;0U&?ZFYMS[>O0VIK8)X?!FE9_
MYQF("<Z]$/Z,HN)NVN'/=@R%KO/9L4R5@[\C0ZZ\8%,M8,'%L[J*U+$LNXIQ
MV>R+'_J;=*."LU8$[:!D':X&F$)94&:%+\ZK%M7C(FBG _6HBF2Q,>29W;#E
MQW[V,QC??'035?8SPV:0;VQ!O"-]P$B/DS7L5OK((^]%IRGQ+IE5<)0!E__9
MS,N -6BAT02EO"5X ^V6_1K1W_UP?>YL_<0)#O= )1:MO#CV92031M226#+8
MY.^ _AR351K<^"M%B U6&_M.3XMA9 *+9>F-KL-GUFQ$#PGA1+'OQN/8U=1%
ME2:PT_.67=F9O0:BJ(0SSO9=NG=>OC@)H;X3*)8L27'T%SRT9-3&D5)L],EO
MWSL^35\SVRCB&_T 5FKEL>V$#KP();>'&#X/QT_Y'B:$F%IY;'.A S%"R=&)
MR2ZG5I:'!PX#?TQ"08ZJ#K9I8$Z0'H&!;.A]5Q>.RVW*<CK]3"/AG,4K:>I@
M7WLU0!\@C25#9-]+&3%UX<W(&.P82H>Y2D; U XU[07B3X@6YVMB0I]55X95
M=;#O<7:@5(K I'.J[\53'C4[+H5]A[(#B4,=-<1T;QD*SGI-N3*QEL]V^XL"
M4E?WH\K5/6YN]KB;%0UB.[Y%-ZZ8.I27HW_UDZ?S-$ZB#:&0-_> #> ,Q6/@
M^7-R67<U9[K4M>S8935DKC9XU1+B']*2]*\14 -S=V/;82V(9L)(NQG\<)9F
M*[)(F']'BUM5\K,*XI+3(T0J"DK*W*(K_ 'JHC.Q*G6NHCC^20:5+C71%\DP
MS,&I*_^5YS)B'RIGVUAY7$I1'C-)KE95JIZP5N:!8A!%)_E3HFJ01071O"%3
M=.52H@<7;E/>'3X%\N3(? )\(&O-8V"J.L@;"E!CHK;<ZE% )TIC!%Z^ND'J
M^>&:[RFR_WA+Y[6U*2]N#'M3HB6W'8";_ 6F@Y?[F41KZFR??/<Z7$5TDWU
MX>-^J_)Q#XW-*JV='-R3@WMR<$\.[J0=W/W=V<,<YP1R+U=1?'K4J.5!\7<+
M,ZS:&Y6_JRB.[^]J5:O*@UR0/L_UQ\3]>AT]?Y,E_Z*[G(GBAP,1Q2]^.[\3
MH%[\D?\-S4!4 W8,;J6_ UCV9H#^_" 'E/\-\QB_*: '608*%63G))0Q@J,2
M:(G]3+!K]/KD;)HYFR=?TT)?LT A9B FU'],\WW5R]#[XM#?2:+P.K]3>9UE
ML[-JN[.SW8RU/,N;/KF@)Q?TY(*>7-!)NZ"G/=;3'NM;WV.])_S!OS#QG4!I
MT@O*87J91KM^4AD'<I#.HPU;J5P=I,UBF&ZF$:(R"4_^TLE?FK"_M*2.1\H,
M_(>W 15^TO<J/REK;E:V-SLT>/*.AI6O26%VCZ'(9B\72U</>6QW<XU@H*#/
MX/,@B%[XZSY7$;V(TL=DE0;-KNNI-&L&^TA%1VK;8#;IZQY-Z6Y)TF)\5VMA
M7RGM>W@W$>EYJ;: \MLH=%NQ7JV(?55U .*;N+P][@T9Q[\4.P#/G=FU[1+8
M^1//6A9?A[ U36&:_Z RS8O/S/QPMO_0;!716?FID]E^,OVF8-2/8_D5D\66
M4#_R'A*')JC+P8)&SW[,^!%(+=<+=:UI>P 01*9M 8 4_5?J)VP162FTP+BA
MB;L%[7";MG.(L([\]G'R?H2IN+TL)I=A75=0K<\"MN*9G:-G=12FYH]*4[-H
M<Y8W.G-";U9I]F14#BN?L$^<"4C "%1YT@:D 3R3MA]4<D*"2-#ZTS8CS5!Z
M<PI13LN[5A-#L_:T34<3A"9M+RH%;3LY"!N8MH5HB!.F3DA.YO!%K1#B^,%$
M(@P<\#KJ*A,-*>L%&R"L/.Z@_CED(@7$.[@N^OU_51WL)([=AJX>#?2-?R85
M$R$M7B[()8SHH</WW$T*G;7B?+M!$]@)'#O/Q&98V<"NV+*$G<P!5L?.Z#B0
M]:TYJ#/RU"Q96\6OJLN656EI((4_64:A4B9+QN""1FN&9KQP=EE*'68!,#-K
MOF9319P<TI-']"8*UTM"]P#$=S2KZZ@NJ/33.MIMT;ZV87I#&%U=E.9^2V?(
M($!B)\,@4"9L-@\?%C'8*?DPH3"92,RW'B;K,39BHA53C)<=2SJ(8HR_<59>
M!)?<FVCLI@GB#<7FUZU#*>O4\\%AJ6RO_53?7BN_^V?Y%8L_"_?=]K\3;<#-
M]IUHMQ4GO6'7&23%)EQ^OZW'+_1[N;!SQV0WVGN2VXZK[[V3V/1-^L,*_Q+]
M/G_3C?[:O*CLVV!;=:->)#5R&K<'EX0.]2- "K?CHF^8+;G0.#G>BB[\',9;
MXOHKGWC*'&_RXOCW[95Z5\5?+@3&N^UE=ZXB2EPG3E1/C<O*8F;CUJJ0 'JQ
MK':'/XH9@<T!T3KT_Z5ZB]RT'>3C1/+%U<3=D>*#3NN^9UPK_7"](#1+G!RZ
MY.XQ\/-[\]K3;KKJV,> P"P:P3$-\M@O78ZU:J?0N"'LHSS]$MJ$2$ MYD'<
M_)7N=X'@F6X>5%><Q?VD.HM;-)N]_CT[M%N$"/X\N\7/7,=?A7WQ@X"9D77!
M31[*-FP&R9&K\2UZE5T: 2@'AD$;=B3D:L5PW<$SD!K?85?T$>#"PVK;P:VY
M1M>(A0D[D"_?#Z5GNR_./R)ZSN=VB;>O%[;9R-LGN"GS,&& ?F@^]/76V1!I
MH$ OMK@A.^ANH>9POL6"#Q)V,* \"W+Q#LG? 2N*-DMBNSTMU;5&F0R!@=(%
M/D2KY(5)EUTW8V9YK'F!35$>VTOIB+]&ND%9N(T2]KF[U=QUR3;A[E)<I$2\
M(+&_#N/<7"-!0-PD=0+VQRVAR4Y)5==&L>\+],!G/[@.EJDSCV&=.>[O0;36
MI.L4EL6^ = #14H4T&,^"@&S<[&M;(ZB)G*LU<0O@IL51ZC83!^;$M)-&O"[
M/O--1!/_7YK@:YNV+#9).G"L@6[2U_$48BNS?NGJ66P<== $<1(P>V*XPDY?
MI0F/<54T]_)URVT]>6#W^_?ZP.Y,$MB=Y=^;53\X*[YXBO=:,;(%NI!O87C\
M.> K)H(3_#=Q%-YH+XTC&P1]A(9[!-EJXZ$IRRV;K)8O)'@F7YA%^]3.,@2U
MBVU4C*\G,FPGIB)<NY<O45^:L6\.V[887R%J2$Y1#]B7%1N+K1O$#MH@Z4(5
MS8'"-6:]FJ\20E5$\S:[-8D=_.E$=7?Q[1_Z8SB,@Z5\&'@@OYWTT0W5#;T2
M.\#]HN\_U#W+I@/)+P^53?9V8>CD.QK(.G?_F?I,+14*_2OQUT\\(O9,J+,F
M/\=DE08W_DJQR'=K]0UXBWW BKX 5)>JNU6]_PKV-?7>@IL'P\:.T&&ZW08^
MH4P7^3YAD1 !,H-_;,0&BZ9F15NSHC%[YNZ%L\O2,#%NYZY+4R=07?,L:BDK
M(;UH2QZ3!^*F-+OF]'<2>,OHBY/PGW?5E,+G;)+QDYLHUAWH;-V@'2>& +S6
MG[]M*S#^P<YFUY-HH^QZ8Z<#H@ &C=JA!!T'A59!# "QXJ@HZZ#O!-=9TC)^
MB4%[+%1<X2V2*Q46_>SGDCIAS'S!PY.P?KC.MO7J'8Z7K!NQ^$^Z@Z']?L4.
M#=%H?/.X88\(#/-,M-@T4Q]35%;!-JV'4.ZC8XP P-#]IGN2G2!9.#3998 X
M64;)^&Q7_8MZLC9IPX[1V>_\;2)_91<(GW#=Q"PJ:P>!YFJKX,R68_?5/ND.
MWHO*8N] RE5+ ;YE\V$Q2]_S>%=\N"VK3T^KK8C]*GQW/TV4Z5(/%3JE9;:6
MPBTOO7)2?=D'_&XPJ!%LRZ9_KEM@B,[[7?)T2$<!X5A: 7MB[9]/#3:33TMX
M.():IMGE&"J.EGZK.EK*VYCQ1F:\%>SCHIDD!GM[LO(XHY)KYMTJUU1YGX]+
M6;!T@C=;1/(-=Q:&#_P;XO!3TX^RW)#-8C:L3^##*4(1+5E<*G,+<'41U;!A
M>0'KMT[PH6[(DM"/:+8($B\?75>.*\M#GH5?5#6P#^C!1P! </3!<%&8"-E;
M!]J!("Z-?8[.:!"H!)[TQ2N.PB&X>>Y0NO/#]7S#C7^UA2&OA7V&SI!9/0 3
MSNUOM&)U6:P&>S7)S!@;;IWJE0I(%GU9>>P'CUH3HGPNT ;7D><D8$VS^8#]
MD10'H/F9V7GH55< A5OYG<JM+-N?Y1\HKR/&LY DV7%3K_C(S&5?.;F=77I?
M8EU@+.]VH^"4G$^)E /9Y$=6T'YW-%Q+#')Y\>GXHSJ1,1]ZD;)$_>?LF*-@
M^_JS>/\O%U5;;QJ.*U"808>*<"EIKB3Z0=2FH>DXN^UALLQT* X3^/S4"# "
M_;W*5#BT=XI'#V>&'U"^)]OB_;Z[U8+Z3-6V?,: 7R_OV.R4C(Y>$)ST"VE&
M"&COG[=K;1HV5"<1_Y":HKZAWK:]:5AN'87\(^K+590J3HVU;&X:!F0W&?^0
MRE*Y2]>'LF3-36HCIQ-D5H6083Q.;#=&).#$$Q54DN-E&>F^^*&_23?9"8?R
MS7"%E_B#,@5>GN.N:'*6M3DK&SVYB=UOL.4'4?9/7.WY2LT2CQFV-"5GL"U.
MDUYX=4)#4H[!&IB4EV<(R]M7 6VV,6@3DW+?C*%Y\XJ@=M+@+4S*+S,%QL*M
M-)T(^^1H$H+K)UH!;4S#FVHAF"4NE*[7[8?IQ%PM*! 3/OPF%/'GT&,0\>-]
MQ+M\=4D<ZTX[&C8SJ0-SK2"R<Q ;$CBQ@W1*D2<>(JELE"M3?OU8CX4<[8:C
MI_>:=L#CIG*/J;QPH$G;I:AB1]: UA>Y:M+@9]T2=>Y&GU=+4\T.EK2:!R#J
MQJ;L5\==4^=2$96=)BTB2= 36AUW2I?_1%S:#CKD2J7D8> <4?++:NI$4?IZ
MV)%/E>8 [^N-D>HDIDEE'+"?#F. _?#;O1.NB60&8G^O_-D.+0=/.L>='R;+
M$@1;J9J7'83J\\#X'N,EQK+LZB!YD31@%GN8*CAK1= FB#I<#3"%LJ ,_R_.
MJQ;5XR)H.PUZ5$6RH(<BCN^/JFT]4=F)3;L*22J;#S90 7FA7E[##EKDRJ7D
MPZ:GY0O#Z.Z9T) G#MM?Y+AW$O(0K:@N\1VX 1MV3E3J5Z/,$!CTB4XT1113
M\EE$:?3"NG[N;-E?5*%8LU:0#\* @BZ X(0.)G1NCU6W3(QZP13Q@L0N];?J
M-YJ!U;$]NC9T&B%C&8_EY3H^H5RN5L3EL?$%H2X'?:UYCL&@&>S#*=UY!2*%
MSN]B?THYZW\<IWQ/*+N;+&=360G[1$D;[@ HH#/%KQC'/#$CB>_"R]>$S?JI
M'S_Q?N?=EO,%J(IMZK1A#8P(.G>_LBF>B;?BW<KW4NMZ)B</4A?[F$@;]N"8
M#'2AGM\*8!8RQT@VW_%RS6+8QS&,T!:+8,FXN"%K)[@B1+7?>"B"?;JBE?%>
ME]#",XD7Q$O=A'A73. %C5Q"O)C_NQR+TN4E3XL!JPPD[R<KR#,1S)*A5$ZB
MQ:F>;)P?TF,I7[ %5 6R]\D*]N!B6<)=];*@VI)KE@2[P#91(Q,8G0G>F=I+
MI55/3NW@*BM">;(N5@&  YVVZE'&[#&)N]7/<?XXJ9PR924H75:%(  P6&A^
M*'I]';I!ZA&/K;];0I/=(G!"GLGI\I^IO\TV,$+OZ/RJ+S0EZW<+>OD*5$/L
M"'0, L&@[EFUMP]/$4T4U]3KTM7*0ZFR([JA$68TT#6I 1H7=MKD"/A@1TA"
M+8O]BUSU>>Y6"]YQ U#R[(APF$IG(9W@U++*2E#:K J0 &!X,Y=Y]XE@ROT&
M&-&":E"J[0BGP&0:;6%K?/N<7Q[R5SYS<N([9O\X2;:E'C]=!=$+Q* T;A'*
MGQT!E<[BVD'M_CQ,;]2*6@3O74^/6CF  U'+PW7L4W./B<+?A5Q&M94]O@XO
M7]TG?LKS*J) 5[!SJU"*[8CE]"*RA493+3!U3_C1.*:<V1^Y]?X!MKQ"VH$R
M;FTX" Z6S1Q?%)?(>?"Q.$S3BF-A.U".[0CHM!12RC%J&CO'I[\X0<K_&5$F
M19B_M./N_DZ\-5$EL_M)F<R.M3O+&LY^RIN>E6W/\L;QD]J5[PH<3H_%\]#C
MO>/O1O&38]DD;'81O$.C6%LO@B[S(S[\A,_9KNAY]NXW7\&>_.W9+D_R_\ T
MDO#B-[QC[(]G.U%C]W[\N^;Z^9A]L.4^0&?M:^P9C8<A_BUZI;2-R=M0XRKU
M+=:60<>HB7)5X,*_L2^33G>?2U7KI 0 D- 3!!RZ=QZ%V4RY9%_37QQ3U;*7
M^;I.2[D2B35,"H'J$86'%V=;?CE6)A#0UL*^; +1*]%+2!H8AHK*'1ORMU%X
M00+6=[IC?WEQJ*=F UX=^[Z!*2VFP S$SWXNOEN=.0'W(1^>"-G/S))E*DM/
M :EI[X0USE(%!JIKGHEV]$I7(T"_+5F3P @;$S/LZG27/!%:O"2<A5Z5\Z"T
M--IJ9 !@$WF-\.BQQ[GKTI1XE="W[C*YO ;:)<;6#&E%LH0E5=!"=9=$5P_]
ME0236 +$,VY@8CEUZKT[D*2MSFA.D%'8[AQF5/_H>J;R]=SXOU*',F?EDG])
M$>S_I KV9Y^;_2G_X'_,HG!V^.9L_]%9Y:NS?^:?G642GO8!3OL IWV TS[
M:1_ 9K_ZM ]P4H+3/H"%S$]I'X"M:QW#T_TT;8][TG%'H06@ X6U:U<(;DER
MR"_";X#?K?:'6$$$&[0SM8V(UE -1-VA_^4B<NPXBG,8Y*D: #4G&=P!2V=E
M!&!_KH_-#^<.I3ON263O_L1WJ^H=.[G/_\-[X $_)_1FY3=FQ4=X$?Z9&?_.
M\=,N)R<?]VF8"OE[+9%+*"ENXY#NY#,K84&/W59[=TBD F.M6MX>LV<(WIK(
M]'Q_$>,U+57PEAM_I:Y^(0Z'*W_Q3__^U@\?FN]O:6*V?)ZO3/O5#]KT;M=I
MFC_%<FURST^QW%,L=T)AO%,L]Z0$IUCN'S&6VYFJ>I!2=X!+5MX>+T4?SM.(
M,FC8SK:#WL-ENK3]I/<?XCD_O)7J]#[@&WL?<*B7[##>!QSO)3NL5Q<QW@<<
M[]5% P/G;;P%C>YQ*!Z7QGMP\/2X]!M_7'JPW?^)/"YMY'._A7=0T><YQ<.J
MWYT>5NV1Y]/#JGT_K#I8?N$W_K!J=;_VE7C0%RP4E6P\:6%^CTJ*!CIC-_8^
MA6OGY;@V@*&S;-6CN(.EJNPX6*?[.NZ9$_OQ X/;\>["7QSJ<ZN,3S.*1*3P
M%K =C!YIU0-E ;.EM'EZ7,BZ69;$?DNUI]7R6'!T1O;'U1W*$]?FO2M2G>;G
M?>_2)$Z<T&-_U6_W 9O!?EFU$Y>M($,GNGJ8TIQ?6&U\!Z2+[6, $#J;<]=-
M-VG )G<O3_X2;1C83R2,,^%YH(/+G-T^63JO<F*-&\)^+K83QRUAF_13*<AI
M709[*V7<O"[3/&)^N#3$-3T*279'*%=TIM_%'37%/:&/JGM"AS;Y3WFK,];L
MK&@7^UK07DZ3\^#*2E@VVIXOIWQQ7',\6U'%CL N@)N&V245"?]PLZASC3D(
M1M.-;4>9M>H'(.IF\ /'F@,4^VV?SR1:4V?[Y+M.(#^@I2@^,5+4P@QS!%C'
M!5G7>R/=I^+=EQ?'/XNEU:LJ#W)!^MRDBHG[]3IZ_B9[IH3N<B:*'PY$%+_X
M[><' >K%'_G?,$]G:16E!+?2WP$<-#- S^_D@/*_H<4^6@!ZD 41T,5<#BC_
M&Q#0_A_]:P'H01;T$$*1+[;N#)R1D*Q\A8&LJX>\J0FRQ.J'I4!0F'N#GW(O
M+"1K'G% C@+D'3:F6UL1>\.S#>% -";-N#'371D>;.NS#<,#,[LD%#FL=[E:
M$3?9ARV9I'RKCU^A\</4#]?%@[%1J' _3=K WBAMHP3F&%F1ZF??V_T;?<IL
M#]_68W2'2!RQ*'O#6XG&B97JGKA1R _,Y ,BN2)L.#@!=P]3UH?=46'3$6G8
MN"T6&#BTUR.DZ&8U1)8L:# //7X$.:B,]FYZ(6_5&A.M5XW0H6C%7'[8@<D.
MHQ-OX= L28A\S^4[U9Y+T<JL: 9[BZ4BU&Y)G3!FE/+U5#^SZVLB'=<6$7;4
MP[/=T5_4&S$MF[,CR QEMWZPNYW,^+LXDNXVS$RP-M_8MI?32;MK-.MEQL\M
M(^FC^MJ3LM(?AD=+<L1(>J>[V*2I9@>+ .V$<37L_<YYD++I?N6[-\1[F#\H
M[W1*RF);H" MJE[H5,H\4,Z7AR3U_&C^[(2)K\-94A8[2F.,LU+F@7!>4#_>
M.)^YH7YS<ZZ$65P4^_BR,<HJB0<".3M?J7^$T1#2P8Z5&D,JD&\@)'_Q/<J&
M"#^ '"D!%16$3KSVS+QR<=%C.S!;JY5Q*6S##BME!%M3*/TPN:!:TFUB;T["
MR%0HK8(S6R[55_NDNS\O*FN3/:J\)"\7%'TVS%; >^(2_YF/>'YKXER7O%Y5
M!WG; AK\J1&D1V'2MT<R\2JOHL(8%E6P:<B9\BL'H#6YB> $ >;VQ(,3D&4$
MWJ3X7K5)P=N:)=%ILV)HB4Z;%:?-BM-FQ6FSXK19<=JL.&U6C!K<M2=@AA#<
M'6]'R)X8^MO>$>K_=LR4=H2XPQ(OH\*7K[I :LBUU:"3B44;<D HT,-/IV#\
M*1@/H'421M0I&&^+Q3758/P]>29AJCI"?B@QS4![74(KCG<+XZ7*VSH_U .G
MLB I^H6=4[CT%"X]A4M/X=)3N/3-\7@*EY["I:>SW6-&\J[2T'-<UJWEWHI4
M/^ I+S^YH[):V2=^SMNBP[,(>P$/#D/D"T\W?T$"]K_:.+6\/!1O>U1;*_Q@
M&P,1W<SI)DKI0\2F,VX5Z'1<4P>:Y66P-"\M=@H ($Q^9^:C17L#"%LS_S=:
M,7<TBA/G8:Y$6500^F:$/1.X7%P+0HRG#9?3AHN6UDFX8:<-%UL\-JLV7#2)
MBY<\CL_SYWO^L^^EJ@32DJ)V#(I>YC2YD,.\]VS*S:]^\I0)X></P"ZC2V:V
M*.8RD4"Z1O 34"MU4L653K1AXDWGEW?ST#N_NU/:<HU2>)YA&^B:9IU$;)19
M[##Z+_^99@]4)T^1=QT^DSCAR8R;OR6$/^:JR);?J<6W-2=VPV*8)Z0U"B'K
MDFJFU-7!GQC[4/,*KSJ!AYDN>X_S_/81'G@8)*<_3-G 81XN#^)<>O<2$LJ7
M /GD6"ORMF:[FG"50]L('*CFJT8A_ E*J#LB;(>=8L9(+_)QD,<7),1/)IG(
M'_C$WO0NPL_=[ F/^'#5_Y8HCL!)BML4>3%@4BG\0('_<R=^XJG:J?^8K_E7
M$5O_7=\)SITT%HZ;S-/25L-^SL"4 YA4@W*Q2*G[Y,1D07V7V0Q7*1^'0OB%
M)2W-2J=$7"$R^M(A=FCVR^&"4)?#NU8EFH<W =U$LX4]<PDMH?702^63D95"
MEEZBU%$C$'32ML$79EU2IFSER_ ")3O;+1QUXARC1H#$#_;2>DOB6P"%/BK/
MTIA)%<?GT>:Q>'>&K<2Q[Q5OQV3BYPK[0<ZN62N6'O'3T=L&JDD/_(6SRV:Q
M931WV7)#28D B3_3*%9,X_J:0!T8['WUECH A<3&<<W?%UF'_K^(=^TQ&?R5
MSUV=.>M[$A?2>/S!D4,V,/:W=,,5-O2,QG['+UEZJ;_%_- +Y.BZ])!$[N_7
MK&/$NTBI'Z[9>N9'WL,3 S,7(_8SMTVN) 9-@(,(EM%OC!(^KUG7\BYGCB#K
M<?8[!8_R*K8>)]?RID-AL//[9..GF_,@8M/&.M,>I6N;'X!7UH%28%7P!X3#
M0!SPYS-=UF%8<(%74=:P-1^*$G\ !H/=&DKX6VF>E\V+3E - <XW/"0K(0%2
M$<J%-8$=J&"6+!X-2WA!(R_-7K7+[1L#[Z!9%<J>;;$?,"KH_)6;'JS'W";5
M9CZ6E8<R95NP1BT_.CWYBX\WS*6\8@*+H[W*."JHNJU7TO0A5@-TK$BE4CFO
MY="0&3IQ:6:>.;'O,B?PP@]2!H4B*_6/JJS49;,SUNXL:_C/LZSI&7,E9T7C
MV#FJ<Z;T*5;JY7#&X"U)#HHF[VRM&/)I!C'$M?$CE*S79._C,O4K\==/3+_G
MSX0RN_4VY6=A[E:Y:W>7)G'B\$,RZVQ R)DT; ;[N .(ZE;08(:M9:Y:]F;R
MW2J;R9@Y]4#<E.8AL]#+O,8+?GZ="$.5F9]CT #V(0HULZ;26&+22#2Q6)H:
M"FD\3.4-89_0Z#)0=?!,>H=): LIS )Q<>PC'"!ZE:*^*1(+C873N*^ ?>"C
M%9$U<7NF$L%3X4(]10&#.LX!@21^_*GAFU2:^?=_^^GCAQ__.LN;LR<'Y+3<
MD;GKIILT\Y>S_-7GT88Q_T3"F"%X,.<U:1W-6K'C/@=H7)H)AI^R$=C?1BBD
M-:4WMJ5T;*/0[4B_L2FSX_S%H=Z2?4"=3*16[.U0=BP7>IK&TAHC'A>&25)
M2IUP3;) XMGN4*8(\&="'"0)O47@A,I;I=7=YMZ_9HERB!1;M-O>N_S#W!W[
MK]2A":'![I[IN_+RF+ D=GAH2,6NAB(4, VT<3P/P]0)N >E3C,I*(<=V1F+
M%"E$Z&&@!P8V.5Q1YS!$(1=<O1QJJEDR W9?'C5RHB?.JG5+M]Y)BMM!%T@5
MA1=O&@)A)\U:4N(PSWN7A7Y9[S91J,N=I:AB1\!4HF0U0K22X\]X?#[/CA9J
M[,*B#/(.8EO'5&3I'4D]Z2CGD9I5#O525:1360G;/NR)9P P;X?X7YP@):5X
MYU&<Y*=.@!H@K8UME0ZA"AJHS'7B4ZX3(5GS?B[1#QTTI351 _Q%=C#2K3IX
MQ2T"/S\0QG/416'B,T\K=($/6GVJ[VM4VLM.5AVU:,_6ADKLO3CZG0_#9G &
M(M?2HZYIMD!DY>UP2EHQ5QN3,@GQ=ST:/6M,+P"^;FS;R5!KH(Z<F\%W)S0Y
MQNYY\$F>XZWRYRG!?=SS8?89(,!*_?"R@U"O>V!PC_$28UEV=9!PAP;,+W[H
M;]*-"LY:$30/JPY7 TRA+#CY<LL8V(-+0H>GDY,GPA47G=B<()%BF,"J-EEQ
MWH6?PWA+7'_E$T^5YE%1''_N4"K240IAJ1##;.-=D4>:.G2W?&&=VUWR4Y;+
MIRB-F?6^?/+YQ1-67;V_9]8$YK2CU:BCZX8MD!EH2X]]*4K73\N7:-^#0Z>4
MW(!JH@583"DQP $]KGT3A>LEH9LRF=S!<Y'>WMU/UKJ:R#%PO9O2,.IA6!C%
M1(J_\/]Z9&VRW_P_4$L! A0#%     @ T:,&7=.8TZ\."   !$    H
M         ( !     &5X,S$M,2YH=&U02P$"% ,4    " #1HP9=]S>!:!P(
M  "=00  "@              @ $V"   97@S,2TR+FAT;5!+ 0(4 Q0    (
M -&C!ETN"(D@J00  -LE   (              "  7H0  !E>#,R+FAT;5!+
M 0(4 Q0    ( -&C!EUD"ZXABV8! ),7$  ,              "  4D5  !F
M;W)M,3 M<2YH=&U02P$"% ,4    " #1HP9=A)\J7;02   YTP  $0
M        @ '^>P$ =&=L<RTR,#(V,#8S,"YX<V102P$"% ,4    " #1HP9=
M0Q_?Q_88  !<2 $ %0              @ 'AC@$ =&=L<RTR,#(V,#8S,%]C
M86PN>&UL4$L! A0#%     @ T:,&744A*T>?,P  TDL# !4
M ( !"J@! '1G;',M,C R-C V,S!?9&5F+GAM;%!+ 0(4 Q0    ( -&C!EW?
M>_L8BW\  #T!!P 5              "  =S; 0!T9VQS+3(P,C8P-C,P7VQA
M8BYX;6Q02P$"% ,4    " #1HP9=4SW ]@-6   WBP4 %0
M@ &:6P( =&=L<RTR,#(V,#8S,%]P<F4N>&UL4$L%!@     )  D *P(  -"Q
$ @    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>form10-q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:TGLS="http://tecnoglass.com/20260630"
  xmlns:country="http://xbrl.sec.gov/country/2026"
  xmlns:dei="http://xbrl.sec.gov/dei/2026"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2026"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2026"
  xmlns:us-gaap="http://fasb.org/us-gaap/2026"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="tgls-20260630.xsd" xlink:type="simple"/>
    <context id="From2026-01-01to2026-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2026-08-03">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <instant>2026-08-03</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_NonrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_NonrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="From2026-04-012026-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_ExternalCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_ExternalCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_ExternalCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_ExternalCustomersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">TGLS:ExternalCustomersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2024-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-31_us-gaap_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-31_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <instant>2026-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="From2026-01-012026-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-03-31</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-03-31</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-03-31</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-03-31_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-03-31</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-03-31</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-03-31</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-03-31</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-03-31_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-06-30_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-06-30_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-06-30_custom_LegalReservesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">TGLS:LegalReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-06-30_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="From2025-04-032025-04-03_custom_ContiglassAssetAcquisitionLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">TGLS:ContiglassAssetAcquisitionLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-03</startDate>
            <endDate>2025-04-03</endDate>
        </period>
    </context>
    <context id="AsOf2025-04-03_custom_ContiglassAssetAcquisitionLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">TGLS:ContiglassAssetAcquisitionLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-04-03</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodReclassificationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:ReportableSegmentAggregationBeforeOtherOperatingSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_ContractAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">TGLS:ContractAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_ContractLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">TGLS:ContractLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_FixedPriceContractsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_FixedPriceContractsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_FixedPriceContractsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_FixedPriceContractsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:FixedPriceContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_ProductSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_ProductSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_ProductSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_ProductSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ProductSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_country_CO">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_country_CO">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_country_CO">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_country_CO">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CO</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_OtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_OtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_OtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_OtherMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">TGLS:OtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_ResidentialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_ResidentialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_ResidentialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_ResidentialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:ResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_CommercialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_CommercialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_CommercialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_CommercialMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">TGLS:CommercialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2026-12-31_srt_ScenarioForecastMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-12-31</instant>
        </period>
    </context>
    <context id="AsOf2027-12-31_srt_ScenarioForecastMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2027-12-31</instant>
        </period>
    </context>
    <context id="AsOf2028-12-31_srt_ScenarioForecastMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2028-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_SoftwareAndLicensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:SoftwareAndLicensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_ContractBacklogMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:ContractBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_SoftwareAndLicensesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:SoftwareAndLicensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_ContractBacklogMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">TGLS:ContractBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_SupplierFinanceProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">TGLS:SupplierFinanceProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_SupplierFinanceProgramMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">TGLS:SupplierFinanceProgramMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-09-30</instant>
        </period>
    </context>
    <context id="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-09-30</instant>
        </period>
    </context>
    <context id="From2025-09-012025-09-30_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-09-01</startDate>
            <endDate>2025-09-30</endDate>
        </period>
    </context>
    <context id="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-09-30</instant>
        </period>
    </context>
    <context id="AsOf2024-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-09-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-21</instant>
        </period>
    </context>
    <context id="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-21</instant>
        </period>
    </context>
    <context id="AsOf2025-09-03_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-09-03</instant>
        </period>
    </context>
    <context id="AsOf2025-09-04_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-09-04</instant>
        </period>
    </context>
    <context id="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-09-04</startDate>
            <endDate>2025-09-04</endDate>
        </period>
    </context>
    <context id="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:SecuredOvernightFinancingRateSofrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-09-04</startDate>
            <endDate>2025-09-04</endDate>
        </period>
    </context>
    <context id="From2024-09-042024-09-04_custom_SeniorSecuredCreditFacilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">TGLS:SeniorSecuredCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-09-04</startDate>
            <endDate>2024-09-04</endDate>
        </period>
    </context>
    <context id="AsOf2026-06-30_us-gaap_InterestRateSwapMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_us-gaap_InterestRateSwapMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:ForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_InterestRateSwapContractsMember_custom_OtherCurrentAssetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">TGLS:OtherCurrentAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_InterestRateSwapContractsMember_us-gaap_AccruedLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_custom_OtherCurrentAssetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:ForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">TGLS:OtherCurrentAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_us-gaap_AccruedLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:ForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="TGLS:StatementOfBalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestExpenseNetOfDeferredCostOfFinancingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestExpenseNetOfDeferredCostOfFinancingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">TGLS:InterestExpenseNetOfDeferredCostOfFinancingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_country_PA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_country_PA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_country_PA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_country_PA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:PA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_OtherMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:OtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_OtherMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:OtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:PrismaGlassLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:AlutraficLedSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StudioAvantiSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SalesToOtherRelatedPartiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_FundacionTecnoglassMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_FundacionTecnoglassMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_FundacionTecnoglassMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_FundacionTecnoglassMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:FundacionTecnoglassMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">TGLS:CEOAndCOOMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:SantaMariaDelMarSASMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2025-06-30_custom_StormArmourSolutionsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">TGLS:StormArmourSolutionsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_StormArmourSolutionsLLCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:StormArmourSolutionsLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2019-05-03_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-05-03</instant>
        </period>
    </context>
    <context id="From2020-12-082020-12-09_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-08</startDate>
            <endDate>2020-12-09</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-09_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-09</instant>
        </period>
    </context>
    <context id="From2020-10-282020-10-28_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-28</startDate>
            <endDate>2020-10-28</endDate>
        </period>
    </context>
    <context id="AsOf2020-10-28_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-28</instant>
        </period>
    </context>
    <context id="AsOf2020-10-27_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-27</instant>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-04-012026-06-30_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-04-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2025-04-012025-06-30_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="From2025-01-012025-06-30_custom_VidrioAndinoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862468">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862484">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">TGLS:VidrioAndinoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-06-30_custom_ZofracostaSAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:ZofracostaSAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-06-30</instant>
        </period>
    </context>
    <context id="AsOf2025-12-31_custom_ZofracostaSAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">TGLS:ZofracostaSAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="AsOf2026-03-18_custom_QuarterlyRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">TGLS:QuarterlyRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-18</instant>
        </period>
    </context>
    <context id="AsOf2026-03-18_custom_AnnualBasisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">TGLS:AnnualBasisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2026-03-18</instant>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_us-gaap_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_srt_MinimumMember_custom_FebruaryTwentyEightThousandThirtyThreeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">TGLS:FebruaryTwentyEightThousandThirtyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <context id="From2026-01-012026-06-30_srt_MinimumMember_custom_ThroughTwoThousandTwentyEightMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001534675</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">TGLS:ThroughTwoThousandTwentyEightMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-01-01</startDate>
            <endDate>2026-06-30</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="USDPShares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="Segment">
        <measure>TGLS:Segment</measure>
    </unit>
    <dei:AmendmentFlag contextRef="From2026-01-01to2026-06-30" id="Fact000003">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate contextRef="From2026-01-01to2026-06-30" id="Fact000004">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalPeriodFocus contextRef="From2026-01-01to2026-06-30" id="Fact000005">Q2</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey contextRef="From2026-01-01to2026-06-30" id="Fact000006">0001534675</dei:EntityCentralIndexKey>
    <us-gaap:PreferredStockValue
      contextRef="AsOf2026-06-30"
      id="xdx2ixbrl0155"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="AsOf2025-12-31"
      id="xdx2ixbrl0156"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherOperatingIncomeLoss
      contextRef="From2026-04-012026-06-30"
      id="xdx2ixbrl0264"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherOperatingIncomeLoss
      contextRef="From2026-01-01to2026-06-30"
      id="xdx2ixbrl0266"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:RealizedGainOnDerivativeInstruments
      contextRef="From2025-01-012025-06-30"
      id="xdx2ixbrl0382"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2026-01-01to2026-06-30"
      id="xdx2ixbrl0432"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="From2026-01-01to2026-06-30"
      id="xdx2ixbrl0438"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:AccountPayableForBusinessAcquisition
      contextRef="From2026-01-01to2026-06-30"
      id="xdx2ixbrl0495"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0510"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0511"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0512"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-01-012026-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0513"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0515"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0520"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0522"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0523"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0524"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0525"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts
      contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0530"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts
      contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0531"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts
      contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0532"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts
      contextRef="From2026-01-012026-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0533"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts
      contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0534"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0538"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0539"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0540"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-012026-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0541"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0542"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-01-012026-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0546"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0547"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-01-012026-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0548"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-01-012026-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0549"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0551"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0566"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0567"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0568"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-04-012026-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0569"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0571"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0576"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0577"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2026-04-012026-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0579"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0580"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0581"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale
      contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0586"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale
      contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0587"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale
      contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0588"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale
      contextRef="From2026-04-012026-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0589"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale
      contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0590"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0594"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0595"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0596"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0597"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0598"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0602"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-04-012026-06-30_us-gaap_TreasuryStockCommonMember"
      id="xdx2ixbrl0603"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0604"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-04-012026-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0605"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0607"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0631"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0632"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-01-012025-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0633"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0635"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0640"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-01-012025-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0642"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0643"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0644"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0649"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0650"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-01-012025-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0651"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0652"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0656"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0657"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-01-012025-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0658"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0659"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0663"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0664"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-01-012025-03-31_custom_LegalReservesMember"
      id="xdx2ixbrl0665"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0667"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0688"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0689"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-04-012025-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0690"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0692"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0697"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-04-012025-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0699"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0700"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0701"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0706"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0707"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-04-012025-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0708"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0709"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0713"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0714"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-04-012025-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0715"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0716"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember"
      id="xdx2ixbrl0720"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0721"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-04-012025-06-30_custom_LegalReservesMember"
      id="xdx2ixbrl0722"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProfitLoss
      contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0724"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="AsOf2024-12-31"
      id="xdx2ixbrl0762"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      id="xdx2ixbrl0795"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0796"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="AsOf2026-06-30"
      id="xdx2ixbrl0797"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0800"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0804"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0808"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0812"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0816"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0820"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0828"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0832"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      id="xdx2ixbrl0844"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherLongTermDebtCurrent
      contextRef="AsOf2025-12-31"
      id="xdx2ixbrl1150"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:DerivativeFinancialInstrumentGain
      contextRef="From2025-04-012025-06-30"
      id="xdx2ixbrl1210"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:DerivativeFinancialInstrumentGain
      contextRef="From2025-01-012025-06-30"
      id="xdx2ixbrl1212"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DerivativeInstrumentsAndHedgesLiabilities
      contextRef="AsOf2026-06-30_custom_InterestRateSwapContractsMember_us-gaap_AccruedLiabilitiesMember"
      id="xdx2ixbrl1309"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DerivativeInstrumentsAndHedgesLiabilities
      contextRef="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_us-gaap_AccruedLiabilitiesMember"
      id="xdx2ixbrl1313"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DerivativeInstrumentsAndHedgesLiabilities
      contextRef="AsOf2026-06-30"
      id="xdx2ixbrl1317"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2026-04-012026-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember"
      id="xdx2ixbrl1329"
      unitRef="USD"
      xsi:nil="true"/>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2026-04-012026-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember"
      id="xdx2ixbrl1337"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30_country_PA"
      id="xdx2ixbrl1363"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-01-012026-06-30_country_PA"
      id="xdx2ixbrl1365"
      unitRef="USD"
      xsi:nil="true"/>
    <dei:DocumentType contextRef="From2026-01-01to2026-06-30" id="Fact000015">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="From2026-01-01to2026-06-30" id="Fact000016">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="From2026-01-01to2026-06-30" id="Fact000017">2026-06-30</dei:DocumentPeriodEndDate>
    <dei:DocumentFiscalYearFocus contextRef="From2026-01-01to2026-06-30" id="Fact000018">2026</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="From2026-01-01to2026-06-30" id="Fact000019">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="From2026-01-01to2026-06-30" id="Fact000020">001-35436</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="From2026-01-01to2026-06-30" id="Fact000021">TECNOGLASS HOLDINGS INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="From2026-01-01to2026-06-30" id="Fact000022">FL</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="From2026-01-01to2026-06-30" id="Fact000023">98-1271120</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="From2026-01-01to2026-06-30" id="Fact000024">3550 NW 49th Street</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="From2026-01-01to2026-06-30" id="Fact000025">Miami</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="From2026-01-01to2026-06-30" id="Fact000026">FL</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="From2026-01-01to2026-06-30" id="Fact000027">33142</dei:EntityAddressPostalZipCode>
    <dei:EntityAddressCountry contextRef="From2026-01-01to2026-06-30" id="Fact000028">US</dei:EntityAddressCountry>
    <dei:CountryRegion contextRef="From2026-01-01to2026-06-30" id="Fact000029">+1</dei:CountryRegion>
    <dei:CityAreaCode contextRef="From2026-01-01to2026-06-30" id="Fact000030">305</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="From2026-01-01to2026-06-30" id="Fact000031">638 5151</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="From2026-01-01to2026-06-30" id="Fact000032">Ordinary     Shares</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="From2026-01-01to2026-06-30" id="Fact000033">TGLS</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="From2026-01-01to2026-06-30" id="Fact000034">NYSE</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="From2026-01-01to2026-06-30" id="Fact000035">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="From2026-01-01to2026-06-30" id="Fact000036">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="From2026-01-01to2026-06-30" id="Fact000037">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="From2026-01-01to2026-06-30" id="Fact000038">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="From2026-01-01to2026-06-30" id="Fact000039">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="From2026-01-01to2026-06-30" id="Fact000040">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="AsOf2026-08-03"
      decimals="INF"
      id="Fact000041"
      unitRef="Shares">44364616</dei:EntityCommonStockSharesOutstanding>
    <dei:EntityListingParValuePerShare
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact000042"
      unitRef="USDPShares">0.0001</dei:EntityListingParValuePerShare>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000050"
      unitRef="USD">80814000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000051"
      unitRef="USD">100901000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ShortTermInvestments
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000053"
      unitRef="USD">3466000</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000054"
      unitRef="USD">3150000</us-gaap:ShortTermInvestments>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000056"
      unitRef="USD">287466000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000057"
      unitRef="USD">239448000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000059"
      unitRef="USD">2075000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000060"
      unitRef="USD">2002000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:InventoryNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000062"
      unitRef="USD">271595000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000063"
      unitRef="USD">213524000</us-gaap:InventoryNet>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000065"
      unitRef="USD">29701000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000066"
      unitRef="USD">31809000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000068"
      unitRef="USD">55082000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000069"
      unitRef="USD">62724000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000071"
      unitRef="USD">730199000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000072"
      unitRef="USD">653558000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000077"
      unitRef="USD">562122000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000078"
      unitRef="USD">476159000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000080"
      unitRef="USD">1887000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000081"
      unitRef="USD">1730000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000083"
      unitRef="USD">329000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000084"
      unitRef="USD">1257000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000086"
      unitRef="USD">28414000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000087"
      unitRef="USD">20506000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000089"
      unitRef="USD">13808000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000090"
      unitRef="USD">12959000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000092"
      unitRef="USD">30059000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000093"
      unitRef="USD">30059000</us-gaap:Goodwill>
    <us-gaap:LongTermInvestments
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000095"
      unitRef="USD">55656000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000096"
      unitRef="USD">57443000</us-gaap:LongTermInvestments>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000098"
      unitRef="USD">7417000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000099"
      unitRef="USD">6721000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000101"
      unitRef="USD">699692000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000102"
      unitRef="USD">606834000</us-gaap:AssetsNoncurrent>
    <us-gaap:Assets
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000104"
      unitRef="USD">1429891000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000105"
      unitRef="USD">1260392000</us-gaap:Assets>
    <us-gaap:DebtCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000113"
      unitRef="USD">6156000</us-gaap:DebtCurrent>
    <us-gaap:DebtCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000114"
      unitRef="USD">427000</us-gaap:DebtCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000116"
      unitRef="USD">178854000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000117"
      unitRef="USD">127228000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000119"
      unitRef="USD">8895000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000120"
      unitRef="USD">10881000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:DividendsPayableCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000122"
      unitRef="USD">6675000</us-gaap:DividendsPayableCurrent>
    <us-gaap:DividendsPayableCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000123"
      unitRef="USD">6730000</us-gaap:DividendsPayableCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000125"
      unitRef="USD">173825000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000126"
      unitRef="USD">149442000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2026-06-30_us-gaap_NonrelatedPartyMember"
      decimals="-3"
      id="Fact000128"
      unitRef="USD">18250000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2025-12-31_us-gaap_NonrelatedPartyMember"
      decimals="-3"
      id="Fact000129"
      unitRef="USD">57038000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000131"
      unitRef="USD">392655000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000132"
      unitRef="USD">351746000</us-gaap:LiabilitiesCurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000137"
      unitRef="USD">28181000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000138"
      unitRef="USD">22404000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000140"
      unitRef="USD">1045000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000141"
      unitRef="USD">1988000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000143"
      unitRef="USD">219238000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000144"
      unitRef="USD">171202000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000146"
      unitRef="USD">248464000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000147"
      unitRef="USD">195594000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000149"
      unitRef="USD">641119000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000150"
      unitRef="USD">547340000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000158"
      unitRef="USDPShares">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000160"
      unitRef="USDPShares">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000162"
      unitRef="Shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000164"
      unitRef="Shares">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000166"
      unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000168"
      unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000170"
      unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000172"
      unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000177"
      unitRef="USDPShares">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000179"
      unitRef="USDPShares">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000181"
      unitRef="Shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000183"
      unitRef="Shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000185"
      unitRef="Shares">46389046</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000187"
      unitRef="Shares">44364716</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000189"
      unitRef="Shares">46389146</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="AsOf2025-12-31"
      decimals="INF"
      id="Fact000191"
      unitRef="Shares">44737726</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000174"
      unitRef="USD">5000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000175"
      unitRef="USD">5000</us-gaap:CommonStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000193"
      unitRef="USD">95679000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000194"
      unitRef="USD">79218000</us-gaap:TreasuryStockValue>
    <TGLS:LegalReserves
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000196"
      unitRef="USD">1458000</TGLS:LegalReserves>
    <TGLS:LegalReserves
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000197"
      unitRef="USD">1458000</TGLS:LegalReserves>
    <us-gaap:AdditionalPaidInCapital
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000199"
      unitRef="USD">153353000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000200"
      unitRef="USD">153358000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000202"
      unitRef="USD">713697000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000203"
      unitRef="USD">670558000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000205"
      unitRef="USD">15938000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000206"
      unitRef="USD">-33109000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000208"
      unitRef="USD">788772000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000209"
      unitRef="USD">713052000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000211"
      unitRef="USD">1429891000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000212"
      unitRef="USD">1260392000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_custom_ExternalCustomersMember"
      decimals="-3"
      id="Fact000219"
      unitRef="USD">294571000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_custom_ExternalCustomersMember"
      decimals="-3"
      id="Fact000220"
      unitRef="USD">254145000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_custom_ExternalCustomersMember"
      decimals="-3"
      id="Fact000221"
      unitRef="USD">542962000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_custom_ExternalCustomersMember"
      decimals="-3"
      id="Fact000222"
      unitRef="USD">475417000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000224"
      unitRef="USD">720000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000225"
      unitRef="USD">1401000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000226"
      unitRef="USD">1341000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact000227"
      unitRef="USD">2417000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000229"
      unitRef="USD">295291000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000230"
      unitRef="USD">255546000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000231"
      unitRef="USD">544303000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000232"
      unitRef="USD">477834000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000234"
      unitRef="USD">185257000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000235"
      unitRef="USD">141211000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000236"
      unitRef="USD">338435000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000237"
      unitRef="USD">265974000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000239"
      unitRef="USD">110034000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000240"
      unitRef="USD">114335000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000241"
      unitRef="USD">205868000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000242"
      unitRef="USD">211860000</us-gaap:GrossProfit>
    <us-gaap:SellingExpense
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000249"
      unitRef="USD">45081000</us-gaap:SellingExpense>
    <us-gaap:SellingExpense
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000250"
      unitRef="USD">29730000</us-gaap:SellingExpense>
    <us-gaap:SellingExpense
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000251"
      unitRef="USD">67981000</us-gaap:SellingExpense>
    <us-gaap:SellingExpense
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000252"
      unitRef="USD">53347000</us-gaap:SellingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000254"
      unitRef="USD">28409000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000255"
      unitRef="USD">23405000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000256"
      unitRef="USD">56402000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000257"
      unitRef="USD">42260000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000259"
      unitRef="USD">73490000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000260"
      unitRef="USD">53135000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000261"
      unitRef="USD">124383000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000262"
      unitRef="USD">95607000</us-gaap:OperatingExpenses>
    <TGLS:OtherOperatingIncomeLoss
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000265"
      unitRef="USD">4000</TGLS:OtherOperatingIncomeLoss>
    <TGLS:OtherOperatingIncomeLoss
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000267"
      unitRef="USD">4280000</TGLS:OtherOperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000269"
      unitRef="USD">36544000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000270"
      unitRef="USD">61204000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000271"
      unitRef="USD">81485000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000272"
      unitRef="USD">120533000</us-gaap:OperatingIncomeLoss>
    <us-gaap:NonoperatingGainsLosses
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000274"
      unitRef="USD">644000</us-gaap:NonoperatingGainsLosses>
    <us-gaap:NonoperatingGainsLosses
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000275"
      unitRef="USD">588000</us-gaap:NonoperatingGainsLosses>
    <us-gaap:NonoperatingGainsLosses
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000276"
      unitRef="USD">1500000</us-gaap:NonoperatingGainsLosses>
    <us-gaap:NonoperatingGainsLosses
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000277"
      unitRef="USD">1604000</us-gaap:NonoperatingGainsLosses>
    <TGLS:EquityMethodIncome
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000279"
      unitRef="USD">-231000</TGLS:EquityMethodIncome>
    <TGLS:EquityMethodIncome
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000280"
      unitRef="USD">942000</TGLS:EquityMethodIncome>
    <TGLS:EquityMethodIncome
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000281"
      unitRef="USD">-129000</TGLS:EquityMethodIncome>
    <TGLS:EquityMethodIncome
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000282"
      unitRef="USD">2286000</TGLS:EquityMethodIncome>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000284"
      unitRef="USD">5213000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000285"
      unitRef="USD">847000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000286"
      unitRef="USD">6130000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000287"
      unitRef="USD">338000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <TGLS:InterestExpenseAndDeferredCostOfFinancing
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000289"
      unitRef="USD">3520000</TGLS:InterestExpenseAndDeferredCostOfFinancing>
    <TGLS:InterestExpenseAndDeferredCostOfFinancing
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000290"
      unitRef="USD">1350000</TGLS:InterestExpenseAndDeferredCostOfFinancing>
    <TGLS:InterestExpenseAndDeferredCostOfFinancing
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000291"
      unitRef="USD">6543000</TGLS:InterestExpenseAndDeferredCostOfFinancing>
    <TGLS:InterestExpenseAndDeferredCostOfFinancing
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000292"
      unitRef="USD">2681000</TGLS:InterestExpenseAndDeferredCostOfFinancing>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000294"
      unitRef="USD">38650000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000295"
      unitRef="USD">62231000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000296"
      unitRef="USD">82443000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000297"
      unitRef="USD">122080000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000299"
      unitRef="USD">14095000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000300"
      unitRef="USD">18148000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000301"
      unitRef="USD">25997000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000302"
      unitRef="USD">35808000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000304"
      unitRef="USD">24555000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000305"
      unitRef="USD">44083000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000306"
      unitRef="USD">56446000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000307"
      unitRef="USD">86272000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact000309"
      unitRef="USDPShares">0.55</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact000310"
      unitRef="USDPShares">0.94</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact000311"
      unitRef="USDPShares">1.27</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact000312"
      unitRef="USDPShares">1.84</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact000314"
      unitRef="USDPShares">0.55</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact000315"
      unitRef="USDPShares">0.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact000316"
      unitRef="USDPShares">1.27</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact000317"
      unitRef="USDPShares">1.84</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact000319"
      unitRef="Shares">44364801</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact000320"
      unitRef="Shares">46988155</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact000321"
      unitRef="Shares">44497265</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact000322"
      unitRef="Shares">46989650</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact000324"
      unitRef="Shares">44364801</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact000325"
      unitRef="Shares">46988155</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact000326"
      unitRef="Shares">44497265</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact000327"
      unitRef="Shares">46989650</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000334"
      unitRef="USD">35693000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000335"
      unitRef="USD">13260000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000336"
      unitRef="USD">48905000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000337"
      unitRef="USD">32836000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000339"
      unitRef="USD">-50000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000340"
      unitRef="USD">785000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000341"
      unitRef="USD">142000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000342"
      unitRef="USD">148000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000344"
      unitRef="USD">35643000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000345"
      unitRef="USD">14045000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000346"
      unitRef="USD">49047000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000347"
      unitRef="USD">32984000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000349"
      unitRef="USD">60198000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000350"
      unitRef="USD">58128000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000351"
      unitRef="USD">105493000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000352"
      unitRef="USD">119256000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000357"
      unitRef="USD">56446000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000358"
      unitRef="USD">86272000</us-gaap:NetIncomeLoss>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000363"
      unitRef="USD">1322000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000364"
      unitRef="USD">987000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000366"
      unitRef="USD">21367000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000367"
      unitRef="USD">16479000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000369"
      unitRef="USD">5009000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000370"
      unitRef="USD">2002000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000372"
      unitRef="USD">-129000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000373"
      unitRef="USD">2286000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000375"
      unitRef="USD">-487000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000376"
      unitRef="USD">4254000</us-gaap:GainLossOnDispositionOfAssets1>
    <TGLS:DeferredCostOfFinancing
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000378"
      unitRef="USD">307000</TGLS:DeferredCostOfFinancing>
    <TGLS:DeferredCostOfFinancing
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000379"
      unitRef="USD">556000</TGLS:DeferredCostOfFinancing>
    <TGLS:RealizedGainOnDerivativeInstruments
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000381"
      unitRef="USD">1181000</TGLS:RealizedGainOnDerivativeInstruments>
    <us-gaap:ForeignCurrencyTransactionGainLossUnrealized
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000384"
      unitRef="USD">15956000</us-gaap:ForeignCurrencyTransactionGainLossUnrealized>
    <us-gaap:ForeignCurrencyTransactionGainLossUnrealized
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000385"
      unitRef="USD">8718000</us-gaap:ForeignCurrencyTransactionGainLossUnrealized>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000387"
      unitRef="USD">-31000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000388"
      unitRef="USD">-391000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000393"
      unitRef="USD">32334000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000394"
      unitRef="USD">20376000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000396"
      unitRef="USD">35818000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000397"
      unitRef="USD">23996000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000399"
      unitRef="USD">2691000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000400"
      unitRef="USD">2529000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000402"
      unitRef="USD">-19953000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000403"
      unitRef="USD">3248000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000405"
      unitRef="USD">31340000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000406"
      unitRef="USD">21802000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000408"
      unitRef="USD">-39160000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000409"
      unitRef="USD">-18513000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000411"
      unitRef="USD">-1810000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000412"
      unitRef="USD">87000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000414"
      unitRef="USD">178000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000415"
      unitRef="USD">15000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000417"
      unitRef="USD">-3668000</us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities>
    <us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000418"
      unitRef="USD">-21387000</us-gaap:IncreaseDecreaseInCommodityContractAssetsAndLiabilities>
    <us-gaap:IncreaseDecreaseInDueToRelatedParties
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000420"
      unitRef="USD">-2533000</us-gaap:IncreaseDecreaseInDueToRelatedParties>
    <us-gaap:IncreaseDecreaseInDueToRelatedParties
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000421"
      unitRef="USD">-1298000</us-gaap:IncreaseDecreaseInDueToRelatedParties>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000423"
      unitRef="USD">11116000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000424"
      unitRef="USD">64760000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000429"
      unitRef="USD">2257000</us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital>
    <us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000430"
      unitRef="USD">8914000</us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000433"
      unitRef="USD">6841000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000435"
      unitRef="USD">600000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000436"
      unitRef="USD">73000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000439"
      unitRef="USD">12312000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000441"
      unitRef="USD">52662000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000442"
      unitRef="USD">62939000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000444"
      unitRef="USD">-51005000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000445"
      unitRef="USD">-48627000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividends
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000450"
      unitRef="USD">13364000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000451"
      unitRef="USD">14095000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsForRepurchaseOfEquity
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000453"
      unitRef="USD">16466000</us-gaap:PaymentsForRepurchaseOfEquity>
    <us-gaap:PaymentsForRepurchaseOfEquity
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000454"
      unitRef="USD">339000</us-gaap:PaymentsForRepurchaseOfEquity>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000456"
      unitRef="USD">63810000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000457"
      unitRef="USD">3613000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:RepaymentsOfDebt
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000459"
      unitRef="USD">15731000</us-gaap:RepaymentsOfDebt>
    <us-gaap:RepaymentsOfDebt
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000460"
      unitRef="USD">4103000</us-gaap:RepaymentsOfDebt>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000462"
      unitRef="USD">18249000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000463"
      unitRef="USD">-14924000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000465"
      unitRef="USD">1553000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000466"
      unitRef="USD">1816000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000468"
      unitRef="USD">-20087000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000469"
      unitRef="USD">3025000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000471"
      unitRef="USD">100901000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="Fact000472"
      unitRef="USD">134882000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000474"
      unitRef="USD">80814000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="AsOf2025-06-30"
      decimals="-3"
      id="Fact000475"
      unitRef="USD">137907000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:InterestPaidNet
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000483"
      unitRef="USD">4698000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000484"
      unitRef="USD">3343000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000486"
      unitRef="USD">51609000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000487"
      unitRef="USD">47360000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:FairValueOfAssetsAcquired
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000492"
      unitRef="USD">9778000</us-gaap:FairValueOfAssetsAcquired>
    <us-gaap:FairValueOfAssetsAcquired
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000493"
      unitRef="USD">7663000</us-gaap:FairValueOfAssetsAcquired>
    <TGLS:AccountPayableForBusinessAcquisition
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000496"
      unitRef="USD">3588000</TGLS:AccountPayableForBusinessAcquisition>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2025-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000506"
      unitRef="Shares">46389146</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-12-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000498"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="AsOf2025-12-31_us-gaap_TreasuryStockCommonMember"
      decimals="INF"
      id="Fact000508"
      unitRef="Shares">1651420</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-12-31_us-gaap_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact000499"
      unitRef="USD">-79218000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000500"
      unitRef="USD">153358000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-12-31_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000501"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-12-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000502"
      unitRef="USD">670558000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000503"
      unitRef="USD">-33109000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000504"
      unitRef="USD">713052000</us-gaap:StockholdersEquity>
    <us-gaap:SharePrice
      contextRef="AsOf2026-03-31"
      decimals="INF"
      id="Fact000518"
      unitRef="USDPShares">0.15</us-gaap:SharePrice>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000514"
      unitRef="USD">6652000</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-01-012026-03-31"
      decimals="-3"
      id="Fact000516"
      unitRef="USD">6652000</us-gaap:DividendsCommonStock>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember"
      decimals="INF"
      id="Fact000528"
      unitRef="Shares">372910</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-03-31_us-gaap_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact000521"
      unitRef="USD">16461000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-03-31"
      decimals="-3"
      id="Fact000526"
      unitRef="USD">16461000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts
      contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000535"
      unitRef="USD">192000</TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts
      contextRef="From2026-01-012026-03-31"
      decimals="-3"
      id="Fact000536"
      unitRef="USD">192000</TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSaleAndDerivativeContracts>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-012026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000543"
      unitRef="USD">13212000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-01-012026-03-31"
      decimals="-3"
      id="Fact000544"
      unitRef="USD">13212000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ProfitLoss
      contextRef="From2026-01-012026-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000550"
      unitRef="USD">31891000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2026-01-012026-03-31"
      decimals="-3"
      id="Fact000552"
      unitRef="USD">31891000</us-gaap:ProfitLoss>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2026-03-31_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000562"
      unitRef="Shares">46389146</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000554"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="AsOf2026-03-31_us-gaap_TreasuryStockCommonMember"
      decimals="INF"
      id="Fact000564"
      unitRef="Shares">2024330</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-03-31_us-gaap_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact000555"
      unitRef="USD">-95679000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000556"
      unitRef="USD">153358000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-03-31_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000557"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000558"
      unitRef="USD">695797000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000559"
      unitRef="USD">-19705000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-03-31"
      decimals="-3"
      id="Fact000560"
      unitRef="USD">735234000</us-gaap:StockholdersEquity>
    <us-gaap:SharePrice
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact000574"
      unitRef="USDPShares">0.15</us-gaap:SharePrice>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000570"
      unitRef="USD">6655000</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000572"
      unitRef="USD">6655000</us-gaap:DividendsCommonStock>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="From2026-04-012026-06-30_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000584"
      unitRef="Shares">100</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2026-04-012026-06-30_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000578"
      unitRef="USD">5000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000582"
      unitRef="USD">5000</us-gaap:StockRepurchasedDuringPeriodValue>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale
      contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000591"
      unitRef="USD">-50000</TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale>
    <TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000592"
      unitRef="USD">-50000</TGLS:OtherComprehensiveIncomeLossChangeInFairValueOfInvestmentsAvailableForSale>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000599"
      unitRef="USD">35693000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000600"
      unitRef="USD">35693000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ProfitLoss
      contextRef="From2026-04-012026-06-30_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000606"
      unitRef="USD">24555000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000608"
      unitRef="USD">24555000</us-gaap:ProfitLoss>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2026-06-30_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000618"
      unitRef="Shares">46389046</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-06-30_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000610"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="AsOf2026-06-30_us-gaap_TreasuryStockCommonMember"
      decimals="INF"
      id="Fact000620"
      unitRef="Shares">2024330</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-06-30_us-gaap_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact000611"
      unitRef="USD">-95679000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-06-30_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000612"
      unitRef="USD">153353000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-06-30_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000613"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-06-30_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000614"
      unitRef="USD">713697000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000615"
      unitRef="USD">15938000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000616"
      unitRef="USD">788772000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2024-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000629"
      unitRef="Shares">46991558</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000622"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000623"
      unitRef="USD">192094000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000624"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000625"
      unitRef="USD">538787000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000626"
      unitRef="USD">-101161000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="Fact000627"
      unitRef="USD">631183000</us-gaap:StockholdersEquity>
    <us-gaap:SharePrice
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="Fact000638"
      unitRef="USDPShares">0.15</us-gaap:SharePrice>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000634"
      unitRef="USD">7050000</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-01-012025-03-31"
      decimals="-3"
      id="Fact000636"
      unitRef="USD">7050000</us-gaap:DividendsCommonStock>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="From2025-01-012025-03-31_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000647"
      unitRef="Shares">1610</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-01-012025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000641"
      unitRef="USD">124000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-01-012025-03-31"
      decimals="-3"
      id="Fact000645"
      unitRef="USD">124000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000653"
      unitRef="USD">-637000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-01-012025-03-31"
      decimals="-3"
      id="Fact000654"
      unitRef="USD">-637000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-01-012025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000660"
      unitRef="USD">19576000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-01-012025-03-31"
      decimals="-3"
      id="Fact000661"
      unitRef="USD">19576000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ProfitLoss
      contextRef="From2025-01-012025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000666"
      unitRef="USD">42189000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2025-01-012025-03-31"
      decimals="-3"
      id="Fact000668"
      unitRef="USD">42189000</us-gaap:ProfitLoss>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2025-03-31_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000677"
      unitRef="Shares">46989948</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000670"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000671"
      unitRef="USD">191970000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000672"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000673"
      unitRef="USD">573926000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000674"
      unitRef="USD">-82222000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="Fact000675"
      unitRef="USD">685137000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2025-03-31_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000686"
      unitRef="Shares">46989948</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000679"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000680"
      unitRef="USD">191970000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000681"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000682"
      unitRef="USD">573926000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000683"
      unitRef="USD">-82222000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="Fact000684"
      unitRef="USD">685137000</us-gaap:StockholdersEquity>
    <us-gaap:SharePrice
      contextRef="AsOf2025-06-30"
      decimals="INF"
      id="Fact000695"
      unitRef="USDPShares">0.15</us-gaap:SharePrice>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000691"
      unitRef="USD">7049000</us-gaap:DividendsCommonStock>
    <us-gaap:DividendsCommonStock
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000693"
      unitRef="USD">7049000</us-gaap:DividendsCommonStock>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="From2025-04-012025-06-30_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000704"
      unitRef="Shares">2800</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-04-012025-06-30_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000698"
      unitRef="USD">215000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000702"
      unitRef="USD">215000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000710"
      unitRef="USD">785000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000711"
      unitRef="USD">785000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-04-012025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000717"
      unitRef="USD">13260000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000718"
      unitRef="USD">13260000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ProfitLoss
      contextRef="From2025-04-012025-06-30_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000723"
      unitRef="USD">44083000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000725"
      unitRef="USD">44083000</us-gaap:ProfitLoss>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2025-06-30_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000734"
      unitRef="Shares">46987148</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000727"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000728"
      unitRef="USD">191755000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000729"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000730"
      unitRef="USD">610960000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000731"
      unitRef="USD">-68177000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30"
      decimals="-3"
      id="Fact000732"
      unitRef="USD">736001000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2025-06-30_us-gaap_CommonStockMember"
      decimals="INF"
      id="Fact000743"
      unitRef="Shares">46987148</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_CommonStockMember"
      decimals="-3"
      id="Fact000736"
      unitRef="USD">5000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact000737"
      unitRef="USD">191755000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_custom_LegalReservesMember"
      decimals="-3"
      id="Fact000738"
      unitRef="USD">1458000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="Fact000739"
      unitRef="USD">610960000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact000740"
      unitRef="USD">-68177000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-06-30"
      decimals="-3"
      id="Fact000741"
      unitRef="USD">736001000</us-gaap:StockholdersEquity>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000745">&lt;p id="xdx_805_eus-gaap--OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_zrS0XKDxICVj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
1. &lt;span id="xdx_82C_zeFH3oOi0IDf"&gt;General&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Tecnoglass
Holdings Inc., a Florida corporation (the &#x201c;Company&#x201d;, &#x201c;Tecnoglass&#x201d;, &#x201c;we&#x201d;, &#x201c;us&#x201d; or &#x201c;our&#x201d;)
manufactures hi-specification, architectural glass and windows for the global residential and commercial construction industries. Currently
the Company offers design, production, marketing, and installation of architectural systems for buildings of high, medium and low elevation
size. Products include windows and doors in glass, aluminum, and vinyl, office partitions and interior divisions, floating facades and
commercial window showcases. The Company sells to customers in North, Central and South America, and exports more than 97% of its production
to foreign countries.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company manufactures glass, aluminum, and vinyl products. Its glass products include tempered glass, laminated glass, thermo-acoustic
glass, curved glass, silk-screened glass, acoustic glass and digital print glass. Its Alutions plant produces mill finished, anodized,
painted aluminum profiles and rods, tubes, bars and plates. Alutions&#x2019; operations include extrusion, smelting, painting and anodizing
processes, and exporting, importing and marketing aluminum products. Its newly installed vinyl assembling lines manufacture and distributes
cutting-edge vinyl windows for new and existing customers.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company also designs, manufactures, markets and installs architectural systems for high, medium and low-rise construction, glass, aluminum
and vinyl windows and doors, office dividers and interiors, floating facades and commercial display windows.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company was originally incorporated in 2013 in the Cayman Islands as Andina Acquisition Corporation and later changed its name to Tecnoglass
Inc. in connection with a business combination between Tecnoglass subsidiaries C.I. Energia Solar S.A. E.S. Windows (&#x201c;ES&#x201d;)
and Tecnglass S.A. (&#x201c;TG&#x201d;) and Andina Acquisition Corporation. Effective July 7, 2026, Tecnoglass Inc. completed a change
of jurisdiction of incorporation from the Cayman Islands to the State of Florida through a transaction known as a continuation under
Section 206 of the Companies Act (as amended) of the Cayman Islands and Section 607.11920 of the Florida Business Corporation Act (the
&#x201c;Continuation&#x201d;). The Continuation became effective on July 7, 2026 upon the Company&#x2019;s registration with the State of
Florida and the concurrent de-registration application of the Company in the Cayman Islands. As part of the Continuation, the Company&#x2019;s
name was changed to Tecnoglass Holdings Inc.&lt;/span&gt;&lt;/p&gt;

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

</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000747">&lt;p id="xdx_808_eus-gaap--SignificantAccountingPoliciesTextBlock_zFZLOL7iSP54" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
2. &lt;span id="xdx_82C_zpLhVrjMenp8"&gt;Basis of Presentation and Summary of Significant Accounting Policies&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_842_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zbEmYlFw8EP1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86E_zmQdi6Vc4Lga"&gt;Basis
of Presentation and Use of Estimates&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally
accepted in the United States of America (&#x201c;US GAAP&#x201d;) and pursuant to the accounting and disclosure rules and regulations
of the Securities and Exchange Commission (&#x201c;SEC&#x201d;) for interim reporting purposes. The results reported in these unaudited
condensed consolidated financial statements are not necessarily indicative of results that may be expected for the entire year. These
unaudited condensed consolidated financial statements should be read in conjunction with the information contained in the Company&#x2019;s
Annual Report on Form 10-K for the year ended December 31, 2025. The year-end condensed balance sheet data was derived from the audited
financial statements in the Annual Report on Form 10-K but does not include all disclosures required by US GAAP.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
preparation of these unaudited condensed consolidated financial statements requires the Company to make estimates and judgments that
affect the reported amounts of assets and liabilities, revenues and expenses, and related disclosures of contingent assets and liabilities
at the date of the Company&#x2019;s financial statements. Actual results may differ from these estimates under different assumptions and
conditions. Estimates utilized in the preparation of these unaudited condensed consolidated financial statements relate to the collectability
of account receivables, the valuation of inventories, estimated earnings on uncompleted contracts, useful lives and potential impairment
of long-lived assets. Changes in estimates are reflected in the periods during which they become known. Actual amounts may differ from
these estimates and could differ materially. These financial statements reflect all adjustments that in the opinion of management are
necessary for a fair statement of the financial position, results of operations and cash flows for the period presented, and are of a
normal, recurring nature.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has one operating segment, Architectural Glass and Windows, which is also its reporting segment. The segment comprises the design,
manufacturing, distribution, marketing and installation of high-specification architectural glass and window products sold to residential
and commercial markets.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
chief operating decision maker (&#x201c;CODM&#x201d;) assesses performance and decides how to allocate resources based on gross profit
and net income that also is reported on the income statement as consolidated net income, cash flows from operations which are reported
on the consolidated statement of cash flows, along with certain non-G.A.A.P metrics. Significant segment expenses include cost of sales,
selling expense, and general and administrative expenses. Other segment items included in consolidated net income are interest expense,
other expense, net and the provision for income taxes, which are reflected in the condensed consolidated statements of operations and
other comprehensive income. These metrics are used to monitor budgeted versus actual results, and competitive analysis by benchmarking
to the Company&#x2019;s competitors. The Company&#x2019;s CODM are the Company&#x2019;s Chief Executive Officer and Chief Operating Officer
acting together as a group.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company performs intra-entity sales and transfers within its single segment comprised of several vertically integrated processes including
its main manufacturing operations in Colombia and distribution and installation in the United States. The Company considers its operations
to be a single reporting segment because it only produces architectural glass and window systems to serve similar markets in a vertically
integrated platform.&lt;/span&gt;&lt;/p&gt;

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

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



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

&lt;p id="xdx_84D_eus-gaap--ConsolidationPolicyTextBlock_zRtmrbFGKsod" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_864_zd5tORF7wbfe"&gt;Principles
of Consolidation&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;These
unaudited consolidated financial statements consolidate Tecnoglass, its subsidiaries TG, ES, ES Windows LLC (&#x201c;ESW LLC&#x201d;),
Tecnoglass LLC, Tecno RE LLC, Tecnoglass Armour, LLC, GM&amp;amp;P Consulting and Glazing Contractors (&#x201c;GM&amp;amp;P&#x201d;), Componenti
USA LLC, ES Metals SAS (&#x201c;ES Metals&#x201d;), Ventanas Solar S.A (&#x201c;VS&#x201d;), which are entities in which we have a controlling
financial interest because we hold a majority voting interest. To determine if we hold a controlling financial interest in an entity,
we first evaluate if we are required to apply the variable interest entity (&#x201c;VIE&#x201d;) model to the entity, otherwise the entity
is evaluated under the voting interest model. All significant intercompany accounts and transactions are eliminated in consolidation,
including unrealized intercompany profits and losses. The equity method of accounting is used for investments in affiliates and other
joint ventures over which the Company has significant influence but does not have effective control.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_842_eus-gaap--DerivativesPolicyTextBlock_zHY21XXkZs3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86D_zsDn1hOuWUug"&gt;Derivative
Financial Instruments&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company recognizes all derivative financial instruments as either assets or liabilities at fair value on the condensed consolidated balance
sheet. The unrealized gains or losses arising from changes in fair value of derivative instruments that are designated and qualify as
cash flow hedges, are recorded in the condensed consolidated statement of comprehensive income. Amounts in accumulated other comprehensive
loss on the condensed consolidated balance sheet are reclassified into the condensed consolidated statement of income in the same period
or periods during which the hedged transactions are settled.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_84C_eus-gaap--ExtendedProductWarrantyPolicy_zUX3zI3TekQ9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86C_zj26imsZYbxc"&gt;Product
Warranties&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_eus-gaap--StandardProductWarrantyDescription_c20260101__20260630_zvQenju0X9L2" title="Product warranties description"&gt;The
Company offers product warranties in connection with the sale and installation of its products that are competitive in the markets in
which the products are sold. Standard warranties vary based upon the product and service offered and durations are generally from five
to ten years for architectural glass, curtain wall, laminated and tempered glass, window and door products.&lt;/span&gt; Warranties are not priced
or sold separately and do not provide the customer with services or coverages in addition to the assurance that the product complies
with original agreed-upon specifications. Claims are settled by replacement of the warrantied products. The Company records a liability
for estimated future warranty costs at the time of sale based on historical claims data and projected revenues. This liability is reassessed
periodically based on updated claims experience and revenue projections.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_890_eus-gaap--ScheduleOfProductWarrantyLiabilityTableTextBlock_zlP2fhss76wi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
changes in the product warranty liability for the six months ended June 30, 2026, are:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B5_zTvqIZrikBmb" style="display: none"&gt;Schedule
of Product Warranty Liability&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_494_20260101__20260630_zzNKflqq1Ifi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20250101__20250630_zhCm0PRRTKT8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Six months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iS_pn3n3_znjD6g3tfZ31" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Balance at beginning of period&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;363&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0762"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--StandardProductWarrantyAccrualWarrantiesIssued_pn3n3_zTTjhMO6YE96" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Accruals for product warranties issued during period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;550&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;570&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--StandardProductWarrantyAccrualPayments_iN_pn3n3_di_zWPvdmPUf28h" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Reductions for payments made under product warranties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(610&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(279&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iE_pn3n3_zcfkKXnHHTmh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance at end of period&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p id="xdx_84F_ecustom--RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_zSNDGwu1GL3a" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_869_zaIx1sfiyFwa"&gt;Recovery
of Previously Paid Import Tariffs&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the three months ended March 31, 2026, the Company recorded $&lt;span id="xdx_905_ecustom--RecoveryOfPreviouslyPaidImportTariffs_pn3n3_c20260101__20260331_zcqGbBcSij8c" title="Recovery of previously paid import tariffs"&gt;1,876&lt;/span&gt; of recoveries associated with import tariffs on certain products imported
to the United States under the International Emergency Economic Powers Act (&#x201c;IEEPA&#x201d;) paid in 2025 and the first quarter of
2026. In February 2026, the U.S. Supreme Court ruled that certain tariffs imposed under the IEEPA were not valid, and in March 2026,
the Court of International Trade ruled that U.S. Customs and Border Protection was required, subject to applicable procedures, to refund
IEEPA tariffs that had been collected. The Company filed reimbursement claims with U.S. Customs and Border Protection, which were accepted
on April 20, 2026 and reimbursement was received in July, 2026. These recoveries relate to previous year and current period imports for
which eligibility for refund was subsequently established. The Company recognized the recovery in the period in which realization became
probable and reasonably estimable as a reduction to selling expenses on the Condensed Consolidated Statement of Operations.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_84A_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z7uUoNXYp8Kj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86B_zK9uuZOnU9Zc"&gt;Recently
Issued Accounting Pronouncements&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
November 2024, the FASB issued ASU 2024-03 &#x201c;Income Statement&#x2014;Reporting Comprehensive Income&#x2014;Expense Disaggregation
Disclosures (Subtopic 220-40)&#x201d;. The Board is issuing this Update to improve the disclosures about a public business entity&#x2019;s
expenses and address requests from investors for more detailed information about the types of expenses (including purchases of inventory,
employee compensation, depreciation, amortization, and depletion) in commonly presented expense captions (such as cost of sales, SG&amp;amp;A,
and research and development). The amendments in this Update are effective for annual reporting periods beginning after December 15,
2026, and interim reporting periods beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating
the potential effect of this ASU on its consolidated financial statements&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
December 2025, the FASB issued ASU 2025-11 &#x201c;Interim Reporting (Topic 270)&#x201d;. The Board is issuing amendments in this Update
to improve the guidance in Topic 270, Interim Reporting, by improving the navigability of the required interim disclosures and clarifying
when that guidance is applicable. The amendments also provide additional guidance on what disclosures should be provided in interim reporting
periods. The amendments in this Update are effective for interim reporting periods within annual reporting periods beginning after December
15, 2027, for public business entities and for interim reporting periods within annual reporting 3 periods beginning after December 15,
2028, for entities other than public business entities. Early adoption is permitted for all entities. The Company is currently evaluating
the potential effect of this ASU on its interim consolidated financial statements&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
November 2025, the FASB issued ASU 2025-09 &#x201c;Derivative and Hedging (Topic 815)&#x201d;. Consistent with the original objective of
Update 2017-12, the objective of this Update is to more closely align hedge accounting with the economics of an entity&#x2019;s risk management
activities. The amendments included in the five issues addressed in this Update are intended to better reflect those strategies in financial
reporting by enabling entities to achieve and maintain hedge accounting for highly effective economic hedges of forecasted transactions.
The five issues addressed are: Issue 1: Similar Risk Assessment for Cash Flow Hedges, Issue 2: Hedging Forecasted Interest Payments on
Choose-Your-Rate Debt Instruments, Issue 3: Cash Flow Hedges of Nonfinancial Forecasted Transactions, Issue 4: Net Written Options as
Hedging Instruments and Issue 5: Foreign-Currency-Denominated Debt Instrument as Hedging Instrument and Hedged Item (Dual Hedge). For
public business entities, the amendments in this Update are effective for annual reporting periods beginning after December 15, 2026,
and interim periods within those annual reporting periods. The Company is currently evaluating the potential effect of this ASU on its
consolidated financial statements.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
September 2025, the FASB issued ASU 2025-06 &#x201c;Intangibles-Goodwill and other-Internal-Use Software (Subtopic 350-40)&#x201d;. The
Board is issuing this Update to modernize the accounting for software costs that are accounted for under Subtopic 350-40, Intangibles&#x2014;Goodwill
and Other&#x2014;Internal-Use Software (referred to as &#x201c;internal-use software&#x201d;). Feedback from preparer and practitioner stakeholders
on the 2021 FASB Invitation to Comment, Agenda Consultation, indicated that the accounting for software costs should be a top priority
for the Board. Considering this feedback, the Board decided to make targeted improvements to Subtopic 350-40 to increase the operability
of the recognition guidance considering different methods of software development. The amendments in this Update are effective for all
entities for annual reporting periods beginning after December 15, 2027, and interim reporting periods 4 within those annual reporting
periods. Early adoption is permitted as of the beginning of an annual reporting period. The Company is currently evaluating the potential
effect of this ASU on its consolidated financial statements.&lt;/span&gt;&lt;/p&gt;

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

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



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

</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000749">&lt;p id="xdx_842_eus-gaap--BasisOfAccountingPolicyPolicyTextBlock_zbEmYlFw8EP1" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86E_zmQdi6Vc4Lga"&gt;Basis
of Presentation and Use of Estimates&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally
accepted in the United States of America (&#x201c;US GAAP&#x201d;) and pursuant to the accounting and disclosure rules and regulations
of the Securities and Exchange Commission (&#x201c;SEC&#x201d;) for interim reporting purposes. The results reported in these unaudited
condensed consolidated financial statements are not necessarily indicative of results that may be expected for the entire year. These
unaudited condensed consolidated financial statements should be read in conjunction with the information contained in the Company&#x2019;s
Annual Report on Form 10-K for the year ended December 31, 2025. The year-end condensed balance sheet data was derived from the audited
financial statements in the Annual Report on Form 10-K but does not include all disclosures required by US GAAP.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
preparation of these unaudited condensed consolidated financial statements requires the Company to make estimates and judgments that
affect the reported amounts of assets and liabilities, revenues and expenses, and related disclosures of contingent assets and liabilities
at the date of the Company&#x2019;s financial statements. Actual results may differ from these estimates under different assumptions and
conditions. Estimates utilized in the preparation of these unaudited condensed consolidated financial statements relate to the collectability
of account receivables, the valuation of inventories, estimated earnings on uncompleted contracts, useful lives and potential impairment
of long-lived assets. Changes in estimates are reflected in the periods during which they become known. Actual amounts may differ from
these estimates and could differ materially. These financial statements reflect all adjustments that in the opinion of management are
necessary for a fair statement of the financial position, results of operations and cash flows for the period presented, and are of a
normal, recurring nature.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has one operating segment, Architectural Glass and Windows, which is also its reporting segment. The segment comprises the design,
manufacturing, distribution, marketing and installation of high-specification architectural glass and window products sold to residential
and commercial markets.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
chief operating decision maker (&#x201c;CODM&#x201d;) assesses performance and decides how to allocate resources based on gross profit
and net income that also is reported on the income statement as consolidated net income, cash flows from operations which are reported
on the consolidated statement of cash flows, along with certain non-G.A.A.P metrics. Significant segment expenses include cost of sales,
selling expense, and general and administrative expenses. Other segment items included in consolidated net income are interest expense,
other expense, net and the provision for income taxes, which are reflected in the condensed consolidated statements of operations and
other comprehensive income. These metrics are used to monitor budgeted versus actual results, and competitive analysis by benchmarking
to the Company&#x2019;s competitors. The Company&#x2019;s CODM are the Company&#x2019;s Chief Executive Officer and Chief Operating Officer
acting together as a group.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company performs intra-entity sales and transfers within its single segment comprised of several vertically integrated processes including
its main manufacturing operations in Colombia and distribution and installation in the United States. The Company considers its operations
to be a single reporting segment because it only produces architectural glass and window systems to serve similar markets in a vertically
integrated platform.&lt;/span&gt;&lt;/p&gt;

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

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



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

</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000751">&lt;p id="xdx_84D_eus-gaap--ConsolidationPolicyTextBlock_zRtmrbFGKsod" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_864_zd5tORF7wbfe"&gt;Principles
of Consolidation&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;These
unaudited consolidated financial statements consolidate Tecnoglass, its subsidiaries TG, ES, ES Windows LLC (&#x201c;ESW LLC&#x201d;),
Tecnoglass LLC, Tecno RE LLC, Tecnoglass Armour, LLC, GM&amp;amp;P Consulting and Glazing Contractors (&#x201c;GM&amp;amp;P&#x201d;), Componenti
USA LLC, ES Metals SAS (&#x201c;ES Metals&#x201d;), Ventanas Solar S.A (&#x201c;VS&#x201d;), which are entities in which we have a controlling
financial interest because we hold a majority voting interest. To determine if we hold a controlling financial interest in an entity,
we first evaluate if we are required to apply the variable interest entity (&#x201c;VIE&#x201d;) model to the entity, otherwise the entity
is evaluated under the voting interest model. All significant intercompany accounts and transactions are eliminated in consolidation,
including unrealized intercompany profits and losses. The equity method of accounting is used for investments in affiliates and other
joint ventures over which the Company has significant influence but does not have effective control.&lt;/span&gt;&lt;/p&gt;

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

</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:DerivativesPolicyTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000753">&lt;p id="xdx_842_eus-gaap--DerivativesPolicyTextBlock_zHY21XXkZs3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86D_zsDn1hOuWUug"&gt;Derivative
Financial Instruments&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company recognizes all derivative financial instruments as either assets or liabilities at fair value on the condensed consolidated balance
sheet. The unrealized gains or losses arising from changes in fair value of derivative instruments that are designated and qualify as
cash flow hedges, are recorded in the condensed consolidated statement of comprehensive income. Amounts in accumulated other comprehensive
loss on the condensed consolidated balance sheet are reclassified into the condensed consolidated statement of income in the same period
or periods during which the hedged transactions are settled.&lt;/span&gt;&lt;/p&gt;

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

</us-gaap:DerivativesPolicyTextBlock>
    <us-gaap:ExtendedProductWarrantyPolicy contextRef="From2026-01-01to2026-06-30" id="Fact000755">&lt;p id="xdx_84C_eus-gaap--ExtendedProductWarrantyPolicy_zUX3zI3TekQ9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86C_zj26imsZYbxc"&gt;Product
Warranties&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_900_eus-gaap--StandardProductWarrantyDescription_c20260101__20260630_zvQenju0X9L2" title="Product warranties description"&gt;The
Company offers product warranties in connection with the sale and installation of its products that are competitive in the markets in
which the products are sold. Standard warranties vary based upon the product and service offered and durations are generally from five
to ten years for architectural glass, curtain wall, laminated and tempered glass, window and door products.&lt;/span&gt; Warranties are not priced
or sold separately and do not provide the customer with services or coverages in addition to the assurance that the product complies
with original agreed-upon specifications. Claims are settled by replacement of the warrantied products. The Company records a liability
for estimated future warranty costs at the time of sale based on historical claims data and projected revenues. This liability is reassessed
periodically based on updated claims experience and revenue projections.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_890_eus-gaap--ScheduleOfProductWarrantyLiabilityTableTextBlock_zlP2fhss76wi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
changes in the product warranty liability for the six months ended June 30, 2026, are:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B5_zTvqIZrikBmb" style="display: none"&gt;Schedule
of Product Warranty Liability&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_494_20260101__20260630_zzNKflqq1Ifi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20250101__20250630_zhCm0PRRTKT8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Six months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iS_pn3n3_znjD6g3tfZ31" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Balance at beginning of period&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;363&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0762"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--StandardProductWarrantyAccrualWarrantiesIssued_pn3n3_zTTjhMO6YE96" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Accruals for product warranties issued during period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;550&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;570&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--StandardProductWarrantyAccrualPayments_iN_pn3n3_di_zWPvdmPUf28h" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Reductions for payments made under product warranties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(610&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(279&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iE_pn3n3_zcfkKXnHHTmh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance at end of period&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

</us-gaap:ExtendedProductWarrantyPolicy>
    <us-gaap:StandardProductWarrantyDescription contextRef="From2026-01-01to2026-06-30" id="Fact000757">The
Company offers product warranties in connection with the sale and installation of its products that are competitive in the markets in
which the products are sold. Standard warranties vary based upon the product and service offered and durations are generally from five
to ten years for architectural glass, curtain wall, laminated and tempered glass, window and door products.</us-gaap:StandardProductWarrantyDescription>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000759">&lt;p id="xdx_890_eus-gaap--ScheduleOfProductWarrantyLiabilityTableTextBlock_zlP2fhss76wi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
changes in the product warranty liability for the six months ended June 30, 2026, are:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B5_zTvqIZrikBmb" style="display: none"&gt;Schedule
of Product Warranty Liability&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_494_20260101__20260630_zzNKflqq1Ifi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20250101__20250630_zhCm0PRRTKT8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Six months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iS_pn3n3_znjD6g3tfZ31" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Balance at beginning of period&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;363&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0762"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--StandardProductWarrantyAccrualWarrantiesIssued_pn3n3_zTTjhMO6YE96" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Accruals for product warranties issued during period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;550&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;570&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--StandardProductWarrantyAccrualPayments_iN_pn3n3_di_zWPvdmPUf28h" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Reductions for payments made under product warranties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(610&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(279&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--StandardProductWarrantyAccrual_iE_pn3n3_zcfkKXnHHTmh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance at end of period&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000761"
      unitRef="USD">363000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000764"
      unitRef="USD">550000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000765"
      unitRef="USD">570000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000767"
      unitRef="USD">610000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000768"
      unitRef="USD">279000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000770"
      unitRef="USD">303000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="AsOf2025-06-30"
      decimals="-3"
      id="Fact000771"
      unitRef="USD">291000</us-gaap:StandardProductWarrantyAccrual>
    <TGLS:RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000773">&lt;p id="xdx_84F_ecustom--RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock_zSNDGwu1GL3a" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_869_zaIx1sfiyFwa"&gt;Recovery
of Previously Paid Import Tariffs&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the three months ended March 31, 2026, the Company recorded $&lt;span id="xdx_905_ecustom--RecoveryOfPreviouslyPaidImportTariffs_pn3n3_c20260101__20260331_zcqGbBcSij8c" title="Recovery of previously paid import tariffs"&gt;1,876&lt;/span&gt; of recoveries associated with import tariffs on certain products imported
to the United States under the International Emergency Economic Powers Act (&#x201c;IEEPA&#x201d;) paid in 2025 and the first quarter of
2026. In February 2026, the U.S. Supreme Court ruled that certain tariffs imposed under the IEEPA were not valid, and in March 2026,
the Court of International Trade ruled that U.S. Customs and Border Protection was required, subject to applicable procedures, to refund
IEEPA tariffs that had been collected. The Company filed reimbursement claims with U.S. Customs and Border Protection, which were accepted
on April 20, 2026 and reimbursement was received in July, 2026. These recoveries relate to previous year and current period imports for
which eligibility for refund was subsequently established. The Company recognized the recovery in the period in which realization became
probable and reasonably estimable as a reduction to selling expenses on the Condensed Consolidated Statement of Operations.&lt;/span&gt;&lt;/p&gt;

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

</TGLS:RecoveryOfPreviouslyPaidImportTariffsPolicyTextBlock>
    <TGLS:RecoveryOfPreviouslyPaidImportTariffs
      contextRef="From2026-01-012026-03-31"
      decimals="-3"
      id="Fact000775"
      unitRef="USD">1876000</TGLS:RecoveryOfPreviouslyPaidImportTariffs>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000777">&lt;p id="xdx_84A_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z7uUoNXYp8Kj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86B_zK9uuZOnU9Zc"&gt;Recently
Issued Accounting Pronouncements&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
November 2024, the FASB issued ASU 2024-03 &#x201c;Income Statement&#x2014;Reporting Comprehensive Income&#x2014;Expense Disaggregation
Disclosures (Subtopic 220-40)&#x201d;. The Board is issuing this Update to improve the disclosures about a public business entity&#x2019;s
expenses and address requests from investors for more detailed information about the types of expenses (including purchases of inventory,
employee compensation, depreciation, amortization, and depletion) in commonly presented expense captions (such as cost of sales, SG&amp;amp;A,
and research and development). The amendments in this Update are effective for annual reporting periods beginning after December 15,
2026, and interim reporting periods beginning after December 15, 2027. Early adoption is permitted. The Company is currently evaluating
the potential effect of this ASU on its consolidated financial statements&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
December 2025, the FASB issued ASU 2025-11 &#x201c;Interim Reporting (Topic 270)&#x201d;. The Board is issuing amendments in this Update
to improve the guidance in Topic 270, Interim Reporting, by improving the navigability of the required interim disclosures and clarifying
when that guidance is applicable. The amendments also provide additional guidance on what disclosures should be provided in interim reporting
periods. The amendments in this Update are effective for interim reporting periods within annual reporting periods beginning after December
15, 2027, for public business entities and for interim reporting periods within annual reporting 3 periods beginning after December 15,
2028, for entities other than public business entities. Early adoption is permitted for all entities. The Company is currently evaluating
the potential effect of this ASU on its interim consolidated financial statements&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
November 2025, the FASB issued ASU 2025-09 &#x201c;Derivative and Hedging (Topic 815)&#x201d;. Consistent with the original objective of
Update 2017-12, the objective of this Update is to more closely align hedge accounting with the economics of an entity&#x2019;s risk management
activities. The amendments included in the five issues addressed in this Update are intended to better reflect those strategies in financial
reporting by enabling entities to achieve and maintain hedge accounting for highly effective economic hedges of forecasted transactions.
The five issues addressed are: Issue 1: Similar Risk Assessment for Cash Flow Hedges, Issue 2: Hedging Forecasted Interest Payments on
Choose-Your-Rate Debt Instruments, Issue 3: Cash Flow Hedges of Nonfinancial Forecasted Transactions, Issue 4: Net Written Options as
Hedging Instruments and Issue 5: Foreign-Currency-Denominated Debt Instrument as Hedging Instrument and Hedged Item (Dual Hedge). For
public business entities, the amendments in this Update are effective for annual reporting periods beginning after December 15, 2026,
and interim periods within those annual reporting periods. The Company is currently evaluating the potential effect of this ASU on its
consolidated financial statements.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
September 2025, the FASB issued ASU 2025-06 &#x201c;Intangibles-Goodwill and other-Internal-Use Software (Subtopic 350-40)&#x201d;. The
Board is issuing this Update to modernize the accounting for software costs that are accounted for under Subtopic 350-40, Intangibles&#x2014;Goodwill
and Other&#x2014;Internal-Use Software (referred to as &#x201c;internal-use software&#x201d;). Feedback from preparer and practitioner stakeholders
on the 2021 FASB Invitation to Comment, Agenda Consultation, indicated that the accounting for software costs should be a top priority
for the Board. Considering this feedback, the Board decided to make targeted improvements to Subtopic 350-40 to increase the operability
of the recognition guidance considering different methods of software development. The amendments in this Update are effective for all
entities for annual reporting periods beginning after December 15, 2027, and interim reporting periods 4 within those annual reporting
periods. Early adoption is permitted as of the beginning of an annual reporting period. The Company is currently evaluating the potential
effect of this ASU on its consolidated financial statements.&lt;/span&gt;&lt;/p&gt;

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

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



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

</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:BusinessCombinationDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000779">&lt;p id="xdx_80C_eus-gaap--BusinessCombinationDisclosureTextBlock_zay3KL92w4N8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
3. &lt;span id="xdx_82F_zpXY331xm7i6"&gt;Acquisitions&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
April 3, 2025, Tecnoglass acquired certain assets and assumed liabilities of Florida-based Continental Glass Systems, LLC., a premier
provider of innovative architectural glass and glazing solutions in the Southeast U.S., to create wholly owned Contiglass Asset Acquisition,
LLC (&#x201c;Contiglass). This acquisition included a manufacturing plant, various intangibles, and a substantial project backlog in both
execution and pipeline phases. This transaction is considered a business combination under U.S. GAAP. Continental&#x2019;s production
capabilities, high-quality product portfolio, and reputation for excellence strengthens Tecnoglass&#x2019; U.S. market presence, broadens
its client reach, and creates synergies that reinforce Tecnoglass&#x2019; leadership position in the architectural glass industry. Additionally,
the Company anticipates operational benefits as it integrates Continental&#x2019;s supply chains into its existing manufacturing operations.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
purchase price for the acquisition was $&lt;span id="xdx_909_eus-gaap--BusinessCombinationPriceOfAcquisitionExpected_pn3n3_c20250403__20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zXBYz13a5Su1" title="Purchase price for acquisition"&gt;10,429&lt;/span&gt;, of which $&lt;span id="xdx_90C_eus-gaap--BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_iI_pn3n3_c20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zO3VRR2P1iPg" title="Cash paid in acquisition"&gt;6,588&lt;/span&gt; of the purchase price was paid in cash by the Company on April 3, 2025.
Post-acquisition working capital adjustment of $&lt;span id="xdx_903_ecustom--WorkingCapitalAdjustment_iI_pn3n3_c20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zOjCtIxUMya3" title="Working capital adjustment"&gt;253&lt;/span&gt; was paid 45 days after transaction closing date, with the remaining amount to be
payable by the Company in cash within 365 days after closing date, subsequently extended. The total amount of acquisition-related costs
was $&lt;span id="xdx_902_eus-gaap--BusinessAcquisitionCostOfAcquiredEntityTransactionCosts_iI_pn3n3_c20250630_zSIEDpoBdX51" title="Acquisition-related costs"&gt;588&lt;/span&gt;, which are included within general and administrative expenses in the Statement of operations during the second quarter of 2025.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
total consideration transferred was $&lt;span id="xdx_905_eus-gaap--BusinessCombinationPriceOfAcquisitionExpected_pn3n3_c20250403__20250403__us-gaap--BusinessAcquisitionAxis__custom--ContiglassAssetAcquisitionLLCMember_zDDcsaK4ANq4" title="Purchase price for acquisition"&gt;10,429&lt;/span&gt;. Under ASC 805, a company can apply measurement period adjustments during the twelve-month
period after the date of acquisition. During this period, the acquirer may adjust preliminary amounts recognized at the acquisition date
to their subsequently determined final fair values. The allocation of the consideration transferred was based on management&#x2019;s judgment
after evaluation of several factors, including a preliminary valuation assessment. The adjustment period ended on April 3, 2026.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_89E_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zvbP8SSBwZn8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the purchase price allocation of the total consideration transferred:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zYcHFEAfGZU3" style="display: none"&gt;Schedule
of Purchase Price Allocation Consideration Transferred&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold"&gt;Consideration Transferred:&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Total purchase price&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_pn3n3_c20260101__20260630_zjP6750rIIye" style="width: 16%; text-align: right" title="Total purchase price"&gt;10,429&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold"&gt;Recognized amounts of identifiable assets acquired and liabilities assumed:&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49D_20260630__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember_ztKDiCL1h5tc" style="border-bottom: Black 1pt solid; text-align: center"&gt;Preliminary&lt;br/&gt;
 Purchase&lt;br/&gt;
 Price&lt;br/&gt;
 Allocation&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260630__srt--RestatementAxis__srt--RevisionOfPriorPeriodReclassificationAdjustmentMember_zV6MEDdmNz89" style="border-bottom: Black 1pt solid; text-align: center"&gt;Measurement&lt;br/&gt;
 Period&lt;br/&gt;
 Adjustments&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20260630_zQsXFEEZBIfg" style="border-bottom: Black 1pt solid; text-align: center"&gt;Adjusted&lt;br/&gt;
 Purchase&lt;br/&gt;
 Price&lt;br/&gt;
 Allocation&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pn3n3_znYefwClbKl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Cash and equivalents&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0795"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0796"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0797"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_pn3n3_zBHTHkbsf3Hk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 52%; text-align: left"&gt;Accounts Receivable&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;4,814&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0800"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;4,814&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_pn3n3_zAMMc7NFsTF1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Other Current Assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;585&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0804"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;585&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_pn3n3_ziU0wsWXlLPd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Property, plant, and equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;826&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0808"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;826&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_iI_pn3n3_ztTg17U7N4p9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Trade Name&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0812"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_iI_pn3n3_zOYNKy2thvU8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Contract Backlog&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;670&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0816"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;670&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_iI_pn3n3_znaucc7zkVi7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Notice of Acceptance and FBC permits&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0820"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iI_pn3n3_zv7AqmO8Vi45" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Right-of-use assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,192&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(555&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;637&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pn3n3_di_zWDIb2Fkzvo6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Account payable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(2,890&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0828"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(2,890&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_iI_pn3n3_zvzMbeStHU6e" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Accrued expenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(81&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0832"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(81&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_iI_pn3n3_zz0qhELdTuL6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Service revenue deposit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(518&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(424&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_iI_pn3n3_zc4AAZAkjHme" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Lease liabilities&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(1,229&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;580&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(649&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_iI_pn3n3_z26G52jgV1b2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Billings in excess of cost and profit&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,987&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0844"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,987&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iTI_pn3n3_zBtw5vgxTAce" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total identifiable net assets&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;3,812&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;119&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;3,931&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_pn3n3_zBhlthppEaw2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Goodwill&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;6,617&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(119&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;6,498&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
excess of the consideration transferred over the estimated fair values of assets acquired and liabilities assumed were recorded as goodwill.
The identifiable intangible asset subject to amortization was the tradename, backlog of projects, and certain Notice of Acceptance and
Florida Building Code permits, which have a remaining useful life of &lt;span id="xdx_907_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_iI_dtY_c20260630__srt--RangeAxis__srt--MinimumMember_zjWifEjdtjB5" style="display: none" title="Intangible asset, finite-lived, useful life"&gt;2&lt;/span&gt;two to &lt;span id="xdx_901_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_iI_dc_c20260630__srt--RangeAxis__srt--MaximumMember_zoVzPQi8CQNb" title="Intangible asset, finite-lived, useful life"&gt;five years&lt;/span&gt;. See &#x201c;Note 6 &#x2013; Goodwill and Intangible
Assets&#x201d; for additional information.&lt;/span&gt;&lt;/p&gt;

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

</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessCombinationPriceOfAcquisitionExpected
      contextRef="From2025-04-032025-04-03_custom_ContiglassAssetAcquisitionLLCMember"
      decimals="-3"
      id="Fact000781"
      unitRef="USD">10429000</us-gaap:BusinessCombinationPriceOfAcquisitionExpected>
    <us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts
      contextRef="AsOf2025-04-03_custom_ContiglassAssetAcquisitionLLCMember"
      decimals="-3"
      id="Fact000783"
      unitRef="USD">6588000</us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts>
    <TGLS:WorkingCapitalAdjustment
      contextRef="AsOf2025-04-03_custom_ContiglassAssetAcquisitionLLCMember"
      decimals="-3"
      id="Fact000785"
      unitRef="USD">253000</TGLS:WorkingCapitalAdjustment>
    <us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts
      contextRef="AsOf2025-06-30"
      decimals="-3"
      id="Fact000787"
      unitRef="USD">588000</us-gaap:BusinessAcquisitionCostOfAcquiredEntityTransactionCosts>
    <us-gaap:BusinessCombinationPriceOfAcquisitionExpected
      contextRef="From2025-04-032025-04-03_custom_ContiglassAssetAcquisitionLLCMember"
      decimals="-3"
      id="Fact000789"
      unitRef="USD">10429000</us-gaap:BusinessCombinationPriceOfAcquisitionExpected>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000791">&lt;p id="xdx_89E_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zvbP8SSBwZn8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the purchase price allocation of the total consideration transferred:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zYcHFEAfGZU3" style="display: none"&gt;Schedule
of Purchase Price Allocation Consideration Transferred&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold"&gt;Consideration Transferred:&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Total purchase price&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_pn3n3_c20260101__20260630_zjP6750rIIye" style="width: 16%; text-align: right" title="Total purchase price"&gt;10,429&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold"&gt;Recognized amounts of identifiable assets acquired and liabilities assumed:&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49D_20260630__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember_ztKDiCL1h5tc" style="border-bottom: Black 1pt solid; text-align: center"&gt;Preliminary&lt;br/&gt;
 Purchase&lt;br/&gt;
 Price&lt;br/&gt;
 Allocation&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260630__srt--RestatementAxis__srt--RevisionOfPriorPeriodReclassificationAdjustmentMember_zV6MEDdmNz89" style="border-bottom: Black 1pt solid; text-align: center"&gt;Measurement&lt;br/&gt;
 Period&lt;br/&gt;
 Adjustments&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20260630_zQsXFEEZBIfg" style="border-bottom: Black 1pt solid; text-align: center"&gt;Adjusted&lt;br/&gt;
 Purchase&lt;br/&gt;
 Price&lt;br/&gt;
 Allocation&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_pn3n3_znYefwClbKl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Cash and equivalents&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0795"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0796"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0797"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_pn3n3_zBHTHkbsf3Hk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 52%; text-align: left"&gt;Accounts Receivable&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;4,814&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0800"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;4,814&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_pn3n3_zAMMc7NFsTF1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Other Current Assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;585&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0804"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;585&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_pn3n3_ziU0wsWXlLPd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Property, plant, and equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;826&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0808"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;826&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_iI_pn3n3_ztTg17U7N4p9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Trade Name&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0812"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog_iI_pn3n3_zOYNKy2thvU8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Contract Backlog&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;670&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0816"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;670&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits_iI_pn3n3_znaucc7zkVi7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Notice of Acceptance and FBC permits&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0820"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_iI_pn3n3_zv7AqmO8Vi45" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Right-of-use assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,192&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(555&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;637&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_iNI_pn3n3_di_zWDIb2Fkzvo6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Account payable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(2,890&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0828"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(2,890&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense_iI_pn3n3_zvzMbeStHU6e" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Accrued expenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(81&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0832"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(81&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit_iI_pn3n3_zz0qhELdTuL6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Service revenue deposit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(518&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(424&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities_iI_pn3n3_zc4AAZAkjHme" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Lease liabilities&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(1,229&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;580&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(649&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit_iI_pn3n3_z26G52jgV1b2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Billings in excess of cost and profit&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,987&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0844"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,987&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iTI_pn3n3_zBtw5vgxTAce" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total identifiable net assets&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;3,812&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;119&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;3,931&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_pn3n3_zBhlthppEaw2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Goodwill&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;6,617&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(119&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;6,498&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000793"
      unitRef="USD">10429000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000799"
      unitRef="USD">4814000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000801"
      unitRef="USD">4814000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000803"
      unitRef="USD">585000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000805"
      unitRef="USD">585000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000807"
      unitRef="USD">826000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000809"
      unitRef="USD">826000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000811"
      unitRef="USD">170000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000813"
      unitRef="USD">170000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000815"
      unitRef="USD">670000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000817"
      unitRef="USD">670000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedContractBacklog>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000819"
      unitRef="USD">6260000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000821"
      unitRef="USD">6260000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoticeOfAcceptanceAndPermits>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000823"
      unitRef="USD">1192000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      decimals="-3"
      id="Fact000824"
      unitRef="USD">-555000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000825"
      unitRef="USD">637000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000827"
      unitRef="USD">2890000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000829"
      unitRef="USD">2890000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000831"
      unitRef="USD">-81000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000833"
      unitRef="USD">-81000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedExpense>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000835"
      unitRef="USD">-518000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      decimals="-3"
      id="Fact000836"
      unitRef="USD">94000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000837"
      unitRef="USD">-424000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedServiceRevenueDeposit>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000839"
      unitRef="USD">-1229000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      decimals="-3"
      id="Fact000840"
      unitRef="USD">580000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000841"
      unitRef="USD">-649000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseLiabilities>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000843"
      unitRef="USD">-5987000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit>
    <TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000845"
      unitRef="USD">-5987000</TGLS:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedBillingsInExcessOfCostAndProfit>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000847"
      unitRef="USD">3812000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      decimals="-3"
      id="Fact000848"
      unitRef="USD">119000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000849"
      unitRef="USD">3931000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="AsOf2026-06-30_srt_ScenarioPreviouslyReportedMember"
      decimals="-3"
      id="Fact000851"
      unitRef="USD">6617000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="AsOf2026-06-30_srt_RevisionOfPriorPeriodReclassificationAdjustmentMember"
      decimals="-3"
      id="Fact000852"
      unitRef="USD">-119000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000853"
      unitRef="USD">6498000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="AsOf2026-06-30_srt_MinimumMember"
      id="Fact000855">P2Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="AsOf2026-06-30_srt_MaximumMember"
      id="Fact000857">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:InventoryDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000859">&lt;p id="xdx_805_eus-gaap--InventoryDisclosureTextBlock_zkkNHN4LDgMc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
4. - &lt;span id="xdx_820_zMquiwWzXxzf"&gt;Inventories, net&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_899_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_z5gPgIy7lEIe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zAcvYPwPZzM6" style="display: none"&gt;Schedule of Inventories&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zAaUQgR6n373" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30, &lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20251231_z82EcYzyKmRa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31, &lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--InventoryRawMaterials_iI_pn3n3_maIGzzds_zuu6CJGzNYY" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Raw materials&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;201,805&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;152,174&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--InventoryWorkInProcess_iI_pn3n3_maIGzzds_zxprYBe7L70l" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Work in process&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31,268&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;27,467&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--InventoryFinishedGoods_iI_pn3n3_maIGzzds_zVvzASOSglil" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Finished goods&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,325&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,222&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--OtherInventoriesSpareParts_iI_pn3n3_maIGzzds_zZwEdqsixlk5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Spares and accessories&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;33,437&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;28,662&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_ecustom--InventoryPackingMaterialGross_iI_pn3n3_maIGzzds_zXHB9z6162S1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Packing material&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,384&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,439&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--InventoryGross_iTI_pn3n3_mtIGzzds_maINzh7N_zPCNvAd5jBwc" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total Inventories, gross&lt;/span&gt;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;272,219&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;213,964&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--InventoryValuationReserves_iNI_pn3n3_di_msINzh7N_zqlLQgzvdhK1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: Inventory allowance&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(624&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(440&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pn3n3_mtINzh7N_zuLpBCNV2eo1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;271,595&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;213,524&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

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



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

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

</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000861">&lt;p id="xdx_899_eus-gaap--ScheduleOfInventoryCurrentTableTextBlock_z5gPgIy7lEIe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zAcvYPwPZzM6" style="display: none"&gt;Schedule of Inventories&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zAaUQgR6n373" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30, &lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20251231_z82EcYzyKmRa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31, &lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--InventoryRawMaterials_iI_pn3n3_maIGzzds_zuu6CJGzNYY" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Raw materials&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;201,805&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;152,174&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--InventoryWorkInProcess_iI_pn3n3_maIGzzds_zxprYBe7L70l" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Work in process&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31,268&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;27,467&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--InventoryFinishedGoods_iI_pn3n3_maIGzzds_zVvzASOSglil" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Finished goods&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,325&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,222&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--OtherInventoriesSpareParts_iI_pn3n3_maIGzzds_zZwEdqsixlk5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Spares and accessories&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;33,437&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;28,662&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_ecustom--InventoryPackingMaterialGross_iI_pn3n3_maIGzzds_zXHB9z6162S1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Packing material&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,384&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,439&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--InventoryGross_iTI_pn3n3_mtIGzzds_maINzh7N_zPCNvAd5jBwc" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total Inventories, gross&lt;/span&gt;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;272,219&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;213,964&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--InventoryValuationReserves_iNI_pn3n3_di_msINzh7N_zqlLQgzvdhK1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: Inventory allowance&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(624&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(440&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--InventoryNet_iTI_pn3n3_mtINzh7N_zuLpBCNV2eo1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;271,595&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;213,524&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterials
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000863"
      unitRef="USD">201805000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000864"
      unitRef="USD">152174000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryWorkInProcess
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000866"
      unitRef="USD">31268000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000867"
      unitRef="USD">27467000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryFinishedGoods
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000869"
      unitRef="USD">3325000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000870"
      unitRef="USD">3222000</us-gaap:InventoryFinishedGoods>
    <us-gaap:OtherInventoriesSpareParts
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000872"
      unitRef="USD">33437000</us-gaap:OtherInventoriesSpareParts>
    <us-gaap:OtherInventoriesSpareParts
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000873"
      unitRef="USD">28662000</us-gaap:OtherInventoriesSpareParts>
    <TGLS:InventoryPackingMaterialGross
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000875"
      unitRef="USD">2384000</TGLS:InventoryPackingMaterialGross>
    <TGLS:InventoryPackingMaterialGross
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000876"
      unitRef="USD">2439000</TGLS:InventoryPackingMaterialGross>
    <us-gaap:InventoryGross
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000878"
      unitRef="USD">272219000</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000879"
      unitRef="USD">213964000</us-gaap:InventoryGross>
    <us-gaap:InventoryValuationReserves
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000881"
      unitRef="USD">624000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000882"
      unitRef="USD">440000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000884"
      unitRef="USD">271595000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000885"
      unitRef="USD">213524000</us-gaap:InventoryNet>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000887">&lt;p id="xdx_801_eus-gaap--RevenueFromContractWithCustomerTextBlock_zShFnIC9nCz9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
5. &#x2013; &lt;span id="xdx_821_zdlGpYnPpaya"&gt;Revenues, Trade Accounts Receivable, Contract Assets and Contract Liabilities&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

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

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

&lt;p id="xdx_895_eus-gaap--DisaggregationOfRevenueTableTextBlock_zsC3zsQ1pnmg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company disaggregates its sales with customers by revenue recognition method for its &lt;span id="xdx_900_eus-gaap--NumberOfReportableSegments_uSegment_c20260101__20260630_z6ICEuJJ27c7" style="display: none" title="Number of reportable segment"&gt;1&lt;/span&gt;only segment, as the Company believes these factors
affect nature, amount, timing and uncertainty of the Company&#x2019;s revenue and cash flows.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_ziFRdLhQyVU6" style="display: none"&gt;Schedule
of Disaggregation by Revenue&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260401__20260630_zn8aG6GqW9F9" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20250401__20250630_z2jG2OAONSs2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20260101__20260630_z7kVs0v4gvKf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20250101__20250630_zjlA39fWrX8c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Three months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Six months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--FixedPriceContractsMember_z4CXt8Dzjch4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 36%"&gt;Fixed price contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;79,645&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;61,228&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;155,753&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;114,202&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ProductSalesMember_zf1YjCCrnCn6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Product sales&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;215,646&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;194,318&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;388,550&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;363,632&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_zw8Sg9JecUy6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total Revenues&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;295,291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;255,546&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;544,303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;477,834&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


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

&lt;p id="xdx_893_eus-gaap--ScheduleOfSegmentReportingInformationBySegmentTextBlock_hus-gaap--StatementBusinessSegmentsAxis__us-gaap--ReportableSegmentAggregationBeforeOtherOperatingSegmentMember_zLROoDif4zG3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table presents revenues broken down by geographical location:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B7_z8fR7V14d2hi" style="display: none"&gt;Schedule of Geographic Information&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260401__20260630_z3KO7z92R3gc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20250401__20250630_znX09XTqZ01c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20260101__20260630_zWP1NOFzGNga" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20250101__20250630_z3rZBeMkzlSa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--CO_z5EmpHrky3J" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 36%"&gt;Colombia&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;6,154&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;6,621&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;13,673&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;13,035&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--US_zrio2RGQcPY" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;United States&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;286,242&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;242,347&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;523,382&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;454,801&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__custom--OtherMember_zN4M3ML5NENg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Other&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,895&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;6,578&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;7,248&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;9,998&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z43kKRDNiWl3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total Revenues&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;295,291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;255,546&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;544,303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;477,834&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p id="xdx_89E_ecustom--ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_zVLhPcVI6SM5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table presents revenues broken down by market:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_zT6LyzY1fQOf" style="display: none"&gt;Schedule
of Revenues Distribution By End Market&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260401__20260630_zVr9I0TmHxVi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20250401__20250630_zGJFHwY5Rl8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20260101__20260630_zTG1cC6P8iV5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20250101__20250630_zU371M67Az06" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ResidentialMember_z5vUE3sCNST1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 36%"&gt;Residential&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;126,499&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;109,598&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;214,969&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;198,527&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--CommercialMember_zg19wcpVOyf4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Commercial&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;168,792&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;145,948&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;329,334&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;279,307&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z2HsdPptAFp4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total Revenues&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;295,291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;255,546&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;544,303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;477,834&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
the ordinary course of business, we extend credit to customers on a generally non-collateralized basis. The Company maintains an allowance
for expected credit losses which is based on management&#x2019;s assessments of the amount which may become uncollectible in the future
and is determined through consideration of our write-off history, specific identification of uncollectible accounts based in part on
the customer&#x2019;s past due balance (based on contractual terms), and consideration of prevailing economic and industry conditions.
Uncollectible accounts are written off after repeated attempts to collect from the customer have been unsuccessful.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_890_eus-gaap--ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_zSvMX8cghHh9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Trade
accounts receivable consists of the following:&lt;/span&gt;&lt;/p&gt;

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

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zaAWCVWwsc99" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zrSnZg4Bs25j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--AccountsReceivableGrossCurrent_iI_pn3n3_maARNCzXOy_zXoZOzT3LGyd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 1pt"&gt;Short-term trade accounts receivable&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; width: 16%; text-align: right"&gt;292,134&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; width: 16%; text-align: right"&gt;243,768&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iNI_pn3n3_di_msARNCzXOy_zYbgDK9d8rrh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: Allowance for credit losses&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(4,668&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(4,320&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--AccountsReceivableNetCurrent_iI_pn3n3_maARNzS1d_mtARNCzXOy_zHLWhw1T7gTa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Total short-term trade accounts receivable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;287,466&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;239,448&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--AccountsReceivableNetNoncurrent_iI_pn3n3_maARNzS1d_z2SOL2Ji4Ujf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Long term trade accounts&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;1,887&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;1,730&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--AccountsReceivableNet_iTI_pn3n3_mtARNzS1d_zaCGkQorRvH7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt"&gt;Total trade accounts receivable&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;289,353&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;241,178&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p id="xdx_897_ecustom--ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_zuSlLAAmYblb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
changes in the allowance for credit losses for the six months ended June 30, 2026, are:&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_zNTpXnNhc3ca" style="display: none"&gt;Schedule of Changes in Allowance for Doubtful Accounts Receivable&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_490_20260101__20260630_z06WByG6mhqa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six months&#160;ended&lt;br/&gt; June 30,
    2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iS_pn3n3_zUzZfrsMmKpc" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 75%"&gt;Balance at beginning of period&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 21%; text-align: right"&gt;4,320&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--ProvisionForDoubtfulAccounts_pn3n3_zF6EvfGDASv6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Provisions for credit losses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,322&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--AllowanceForDoubtfulAccountsReceivableWriteOffs_iN_pn3n3_di_zLWFDfPsf2V1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Deductions and write-offs, net of foreign currency adjustment&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(974&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iE_pn3n3_zfOE7D8BUJd9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance at end of period&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;4,668&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Contract
assets represent accumulated incurred costs and earned profits on contracts with customers that have been recorded as sales but have
not been billed to customers and are classified as current. In addition, a portion of the amounts billed on certain fixed price contracts
that are withheld by the customer as a retainage until a final good receipt of the complete project to the customers satisfaction. Contract
liabilities consist of advance payments and billings in excess of costs incurred and deferred revenue, and represent amounts received
in excess of sales recognized on contracts. The Company classifies advance payments and billings in excess of costs incurred as current,
and deferred revenue as current or non-current based on the expected timing of sales recognition. Contract assets and contract liabilities
are determined on a contract-by-contract basis at the end of each reporting period. The non-current portion of contract liabilities is
included in long-term liabilities in the Company&#x2019;s condensed consolidated balance sheets.&lt;/span&gt;&lt;/p&gt;

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

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



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

&lt;p id="xdx_89C_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zZeip9VBkFt2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
table below presents the components of net contract assets (liabilities):&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zVPZPUl2E1f1" style="display: none"&gt;Schedule of Contract Assets and Liabilities&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zZ8ERCuI3CU7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zf8Edftfkl0j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_maNCLAzcHD_zAoEhWnXvHgb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Contract assets &#x2014; current&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;29,701&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;31,809&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_maNCLAzcHD_z96nqdKFt8wi" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Contract assets &#x2014; non-current&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;28,414&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;20,506&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--ContractWithCustomerLiabilityCurrent_iNI_pn3n3_di_msNCLAzcHD_zUMZTTxkYmN" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Contract liabilities &#x2014; current&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(173,825&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(149,442&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iNI_pn3n3_di_msNCLAzcHD_z7ljzYOSQgU4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Contract liabilities &#x2014; non-current&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(1,045&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(1,988&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_ecustom--NetContractLiabilitiesAssets_iTI_pn3n3_mtNCLAzcHD_zD8p6lZuEsQ6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Net contract liability&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;(116,755&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;(99,115&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p id="xdx_891_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractAssetsMember_zhQ7MUHsYUbl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of contract assets are presented in the table below:&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_z8kWXE9QDAok" style="display: none"&gt;Schedule of Contract Assets and Liabilities&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zoUBiGy3HgLi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zgcXC8WjluF7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--UnbilledReceivablesCurrent_iI_pn3n3_maCWCAGz5IH_zrD2TyXex3qh" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Unbilled contract receivables, gross&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;6,421&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;9,084&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--ConstructionContractorReceivableRetainage_iI_pn3n3_maCWCAGz5IH_zy3ea9V6YIC" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Retainage&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;51,694&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;43,231&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--ContractWithCustomerAssetGrossCurrent_iTI_pn3n3_mtCWCAGz5IH_zcJ9weFsqgol" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total contract assets&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;58,115&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;52,315&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_ziQ2lf9forwa" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;29,701&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;31,809&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_zoSiol6Aq68g" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Contract Assets &#x2013; non-current&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;28,414&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;20,506&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p id="xdx_89E_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractLiabilitiesMember_zFpKlaO5PLok" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of contract liabilities are presented in the table below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zGUCqnDUtWIj" style="display: none"&gt;Schedule of Contract Assets and Liabilities&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_ziRGyuM3YwEh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zO6Dg5g3EsGh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_ecustom--BillingsInExcessOfCosts_iI_pn3n3_zccOCan23m5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Billings in excess of costs&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;122,407&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;104,376&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms_iI_pn3n3_zNkZz0xWejM3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Advances from customers on uncompleted contracts&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;52,463&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;47,054&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--ContractWithCustomerLiability_iTI_pn3n3_zQyaKNqiIDWj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total contract liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;174,780&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;151,430&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--ContractWithCustomerLiabilityCurrent_iI_pn3n3_zWF9p2jHZEre" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;173,825&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;149,442&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iI_pn3n3_z1ztisJRlDfb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Contract liabilities &#x2013; non-current&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,045&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,988&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the three and six months ended June 30, 2026, the Company recognized $&lt;span id="xdx_900_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20260401__20260630_zI9G6FvPrwZ1" title="Sales related to contract liabilities"&gt;11,336&lt;/span&gt; and $&lt;span id="xdx_902_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20260101__20260630_zcl9ysheQ3S9" title="Sales related to contract liabilities"&gt;23,274&lt;/span&gt; of sales related to its contract liabilities
on January 1, 2026, respectively. During the three and six months ended June 30, 2025, the Company recognized $&lt;span id="xdx_90B_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20250401__20250630_zcvbQQxfw6Nh" title="Sales related to contract liabilities"&gt;10,314&lt;/span&gt; and $&lt;span id="xdx_900_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_pn3n3_c20250101__20250630_zyRgxscuehBc" title="Sales related to contract liabilities"&gt;16,858&lt;/span&gt; of
sales related to its contract liabilities on January 1, 2025, respectively.&lt;/span&gt;&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30, 2026, the Company had $&lt;span id="xdx_900_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20260630_z09KrEvpFav3" title="Remaining performance obligation"&gt;884.2&lt;/span&gt; million of remaining performance obligations, which represents the transaction price of firm
orders minus sales recognized from inception to date. Remaining performance obligations exclude unexercised contract options, verbal
commitments, Letters of Intent or written mandates, and potential orders under basic ordering agreements. The Company expects to recognize
&lt;span id="xdx_90D_eus-gaap--RevenueRemainingPerformanceObligationPercentage_iI_pid_dp_uPure_c20260630_zkIEiDjCH2y7" title="Performance obligation, percentage"&gt;100&lt;/span&gt;% of sales relating to existing performance obligations within three years, of which $&lt;span id="xdx_90D_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20261231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zVCeEYDvPNxk" title="Remaining performance obligation"&gt;309.2&lt;/span&gt; million are expected to be recognized
during the year ending December 31, 2026, $&lt;span id="xdx_902_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20271231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zMDAZjQXKJ1i" title="Remaining performance obligation"&gt;409.8&lt;/span&gt; million during the year ending December 31, 2027, and $&lt;span id="xdx_90B_eus-gaap--RevenueRemainingPerformanceObligation_iI_pn5n6_c20281231__srt--StatementScenarioAxis__srt--ScenarioForecastMember_zSu7Le6sE2K7" title="Remaining performance obligation"&gt;165.2&lt;/span&gt; million during the year
ending December 31, 2028.&lt;/span&gt;&lt;/p&gt;

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

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



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

</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000889">&lt;p id="xdx_895_eus-gaap--DisaggregationOfRevenueTableTextBlock_zsC3zsQ1pnmg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company disaggregates its sales with customers by revenue recognition method for its &lt;span id="xdx_900_eus-gaap--NumberOfReportableSegments_uSegment_c20260101__20260630_z6ICEuJJ27c7" style="display: none" title="Number of reportable segment"&gt;1&lt;/span&gt;only segment, as the Company believes these factors
affect nature, amount, timing and uncertainty of the Company&#x2019;s revenue and cash flows.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_ziFRdLhQyVU6" style="display: none"&gt;Schedule
of Disaggregation by Revenue&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260401__20260630_zn8aG6GqW9F9" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20250401__20250630_z2jG2OAONSs2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20260101__20260630_z7kVs0v4gvKf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20250101__20250630_zjlA39fWrX8c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Three months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Six months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--FixedPriceContractsMember_z4CXt8Dzjch4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 36%"&gt;Fixed price contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;79,645&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;61,228&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;155,753&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;114,202&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ProductSalesMember_zf1YjCCrnCn6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Product sales&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;215,646&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;194,318&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;388,550&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;363,632&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_zw8Sg9JecUy6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total Revenues&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;295,291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;255,546&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;544,303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;477,834&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact000891"
      unitRef="Segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_custom_FixedPriceContractsMember"
      decimals="-3"
      id="Fact000893"
      unitRef="USD">79645000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_custom_FixedPriceContractsMember"
      decimals="-3"
      id="Fact000894"
      unitRef="USD">61228000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_custom_FixedPriceContractsMember"
      decimals="-3"
      id="Fact000895"
      unitRef="USD">155753000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_custom_FixedPriceContractsMember"
      decimals="-3"
      id="Fact000896"
      unitRef="USD">114202000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_custom_ProductSalesMember"
      decimals="-3"
      id="Fact000898"
      unitRef="USD">215646000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_custom_ProductSalesMember"
      decimals="-3"
      id="Fact000899"
      unitRef="USD">194318000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_custom_ProductSalesMember"
      decimals="-3"
      id="Fact000900"
      unitRef="USD">388550000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_custom_ProductSalesMember"
      decimals="-3"
      id="Fact000901"
      unitRef="USD">363632000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000903"
      unitRef="USD">295291000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000904"
      unitRef="USD">255546000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000905"
      unitRef="USD">544303000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000906"
      unitRef="USD">477834000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="From2026-01-012026-06-30_us-gaap_ReportableSegmentAggregationBeforeOtherOperatingSegmentMember"
      id="Fact000908">&lt;p id="xdx_893_eus-gaap--ScheduleOfSegmentReportingInformationBySegmentTextBlock_hus-gaap--StatementBusinessSegmentsAxis__us-gaap--ReportableSegmentAggregationBeforeOtherOperatingSegmentMember_zLROoDif4zG3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table presents revenues broken down by geographical location:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B7_z8fR7V14d2hi" style="display: none"&gt;Schedule of Geographic Information&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260401__20260630_z3KO7z92R3gc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20250401__20250630_znX09XTqZ01c" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20260101__20260630_zWP1NOFzGNga" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20250101__20250630_z3rZBeMkzlSa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--CO_z5EmpHrky3J" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 36%"&gt;Colombia&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;6,154&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;6,621&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;13,673&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;13,035&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__country--US_zrio2RGQcPY" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;United States&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;286,242&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;242,347&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;523,382&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;454,801&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--StatementGeographicalAxis__custom--OtherMember_zN4M3ML5NENg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Other&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,895&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;6,578&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;7,248&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;9,998&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z43kKRDNiWl3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total Revenues&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;295,291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;255,546&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;544,303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;477,834&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_country_CO"
      decimals="-3"
      id="Fact000910"
      unitRef="USD">6154000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_country_CO"
      decimals="-3"
      id="Fact000911"
      unitRef="USD">6621000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_country_CO"
      decimals="-3"
      id="Fact000912"
      unitRef="USD">13673000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_country_CO"
      decimals="-3"
      id="Fact000913"
      unitRef="USD">13035000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_country_US"
      decimals="-3"
      id="Fact000915"
      unitRef="USD">286242000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_country_US"
      decimals="-3"
      id="Fact000916"
      unitRef="USD">242347000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_country_US"
      decimals="-3"
      id="Fact000917"
      unitRef="USD">523382000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_country_US"
      decimals="-3"
      id="Fact000918"
      unitRef="USD">454801000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_custom_OtherMember"
      decimals="-3"
      id="Fact000920"
      unitRef="USD">2895000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_custom_OtherMember"
      decimals="-3"
      id="Fact000921"
      unitRef="USD">6578000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_custom_OtherMember"
      decimals="-3"
      id="Fact000922"
      unitRef="USD">7248000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_custom_OtherMember"
      decimals="-3"
      id="Fact000923"
      unitRef="USD">9998000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000925"
      unitRef="USD">295291000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000926"
      unitRef="USD">255546000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000927"
      unitRef="USD">544303000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000928"
      unitRef="USD">477834000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <TGLS:ScheduleOfRevenuesDistributionByEndMarketTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000930">&lt;p id="xdx_89E_ecustom--ScheduleOfRevenuesDistributionByEndMarketTableTextBlock_zVLhPcVI6SM5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table presents revenues broken down by market:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_zT6LyzY1fQOf" style="display: none"&gt;Schedule
of Revenues Distribution By End Market&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20260401__20260630_zVr9I0TmHxVi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20250401__20250630_zGJFHwY5Rl8" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20260101__20260630_zTG1cC6P8iV5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20250101__20250630_zU371M67Az06" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six months ended &lt;br/&gt; June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--ResidentialMember_z5vUE3sCNST1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 36%"&gt;Residential&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;126,499&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;109,598&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;214,969&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;198,527&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_hsrt--ProductOrServiceAxis__custom--CommercialMember_zg19wcpVOyf4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Commercial&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;168,792&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;145,948&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;329,334&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;279,307&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_pn3n3_z2HsdPptAFp4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total Revenues&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;295,291&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;255,546&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;544,303&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;477,834&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</TGLS:ScheduleOfRevenuesDistributionByEndMarketTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_custom_ResidentialMember"
      decimals="-3"
      id="Fact000932"
      unitRef="USD">126499000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_custom_ResidentialMember"
      decimals="-3"
      id="Fact000933"
      unitRef="USD">109598000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_custom_ResidentialMember"
      decimals="-3"
      id="Fact000934"
      unitRef="USD">214969000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_custom_ResidentialMember"
      decimals="-3"
      id="Fact000935"
      unitRef="USD">198527000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30_custom_CommercialMember"
      decimals="-3"
      id="Fact000937"
      unitRef="USD">168792000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30_custom_CommercialMember"
      decimals="-3"
      id="Fact000938"
      unitRef="USD">145948000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-012026-06-30_custom_CommercialMember"
      decimals="-3"
      id="Fact000939"
      unitRef="USD">329334000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30_custom_CommercialMember"
      decimals="-3"
      id="Fact000940"
      unitRef="USD">279307000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact000942"
      unitRef="USD">295291000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact000943"
      unitRef="USD">255546000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000944"
      unitRef="USD">544303000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact000945"
      unitRef="USD">477834000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000947">&lt;p id="xdx_890_eus-gaap--ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_zSvMX8cghHh9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Trade
accounts receivable consists of the following:&lt;/span&gt;&lt;/p&gt;

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

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zaAWCVWwsc99" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zrSnZg4Bs25j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--AccountsReceivableGrossCurrent_iI_pn3n3_maARNCzXOy_zXoZOzT3LGyd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 1pt"&gt;Short-term trade accounts receivable&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; width: 16%; text-align: right"&gt;292,134&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; width: 16%; text-align: right"&gt;243,768&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iNI_pn3n3_di_msARNCzXOy_zYbgDK9d8rrh" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: Allowance for credit losses&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(4,668&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(4,320&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--AccountsReceivableNetCurrent_iI_pn3n3_maARNzS1d_mtARNCzXOy_zHLWhw1T7gTa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Total short-term trade accounts receivable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;287,466&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;239,448&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--AccountsReceivableNetNoncurrent_iI_pn3n3_maARNzS1d_z2SOL2Ji4Ujf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Long term trade accounts&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;1,887&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;1,730&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--AccountsReceivableNet_iTI_pn3n3_mtARNzS1d_zaCGkQorRvH7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; text-align: left; padding-bottom: 2.5pt"&gt;Total trade accounts receivable&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;289,353&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;241,178&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000949"
      unitRef="USD">292134000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000950"
      unitRef="USD">243768000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000952"
      unitRef="USD">4668000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000953"
      unitRef="USD">4320000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000955"
      unitRef="USD">287466000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000956"
      unitRef="USD">239448000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000958"
      unitRef="USD">1887000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:AccountsReceivableNetNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000959"
      unitRef="USD">1730000</us-gaap:AccountsReceivableNetNoncurrent>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000961"
      unitRef="USD">289353000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000962"
      unitRef="USD">241178000</us-gaap:AccountsReceivableNet>
    <TGLS:ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000964">&lt;p id="xdx_897_ecustom--ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock_zuSlLAAmYblb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
changes in the allowance for credit losses for the six months ended June 30, 2026, are:&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_zNTpXnNhc3ca" style="display: none"&gt;Schedule of Changes in Allowance for Doubtful Accounts Receivable&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_490_20260101__20260630_z06WByG6mhqa" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six months&#160;ended&lt;br/&gt; June 30,
    2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iS_pn3n3_zUzZfrsMmKpc" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 75%"&gt;Balance at beginning of period&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 21%; text-align: right"&gt;4,320&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--ProvisionForDoubtfulAccounts_pn3n3_zF6EvfGDASv6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Provisions for credit losses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,322&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--AllowanceForDoubtfulAccountsReceivableWriteOffs_iN_pn3n3_di_zLWFDfPsf2V1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Deductions and write-offs, net of foreign currency adjustment&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(974&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iE_pn3n3_zfOE7D8BUJd9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance at end of period&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;4,668&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</TGLS:ScheduleOfChangesInAllowanceForDoubtfulAccountsReceivableTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000966"
      unitRef="USD">4320000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000968"
      unitRef="USD">1322000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact000970"
      unitRef="USD">974000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000972"
      unitRef="USD">4668000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact000974">&lt;p id="xdx_89C_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zZeip9VBkFt2" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
table below presents the components of net contract assets (liabilities):&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zVPZPUl2E1f1" style="display: none"&gt;Schedule of Contract Assets and Liabilities&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zZ8ERCuI3CU7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zf8Edftfkl0j" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_maNCLAzcHD_zAoEhWnXvHgb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Contract assets &#x2014; current&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;29,701&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;31,809&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_maNCLAzcHD_z96nqdKFt8wi" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Contract assets &#x2014; non-current&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;28,414&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;20,506&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--ContractWithCustomerLiabilityCurrent_iNI_pn3n3_di_msNCLAzcHD_zUMZTTxkYmN" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Contract liabilities &#x2014; current&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(173,825&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(149,442&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iNI_pn3n3_di_msNCLAzcHD_z7ljzYOSQgU4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Contract liabilities &#x2014; non-current&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(1,045&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(1,988&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_ecustom--NetContractLiabilitiesAssets_iTI_pn3n3_mtNCLAzcHD_zD8p6lZuEsQ6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Net contract liability&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;(116,755&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="font-weight: bold; text-align: right"&gt;(99,115&lt;/td&gt;&lt;td style="font-weight: bold; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000976"
      unitRef="USD">29701000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000977"
      unitRef="USD">31809000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000979"
      unitRef="USD">28414000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000980"
      unitRef="USD">20506000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000982"
      unitRef="USD">173825000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000983"
      unitRef="USD">149442000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000985"
      unitRef="USD">1045000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000986"
      unitRef="USD">1988000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <TGLS:NetContractLiabilitiesAssets
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000988"
      unitRef="USD">-116755000</TGLS:NetContractLiabilitiesAssets>
    <TGLS:NetContractLiabilitiesAssets
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000989"
      unitRef="USD">-99115000</TGLS:NetContractLiabilitiesAssets>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="From2026-01-012026-06-30_custom_ContractAssetsMember"
      id="Fact000991">&lt;p id="xdx_891_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractAssetsMember_zhQ7MUHsYUbl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of contract assets are presented in the table below:&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_z8kWXE9QDAok" style="display: none"&gt;Schedule of Contract Assets and Liabilities&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_zoUBiGy3HgLi" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zgcXC8WjluF7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--UnbilledReceivablesCurrent_iI_pn3n3_maCWCAGz5IH_zrD2TyXex3qh" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Unbilled contract receivables, gross&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;6,421&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;9,084&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--ConstructionContractorReceivableRetainage_iI_pn3n3_maCWCAGz5IH_zy3ea9V6YIC" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Retainage&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;51,694&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;43,231&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--ContractWithCustomerAssetGrossCurrent_iTI_pn3n3_mtCWCAGz5IH_zcJ9weFsqgol" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total contract assets&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;58,115&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;52,315&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--ContractWithCustomerAssetNetCurrent_iI_pn3n3_ziQ2lf9forwa" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;29,701&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;31,809&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--ContractWithCustomerAssetNetNoncurrent_iI_pn3n3_zoSiol6Aq68g" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Contract Assets &#x2013; non-current&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;28,414&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;20,506&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:UnbilledReceivablesCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000993"
      unitRef="USD">6421000</us-gaap:UnbilledReceivablesCurrent>
    <us-gaap:UnbilledReceivablesCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000994"
      unitRef="USD">9084000</us-gaap:UnbilledReceivablesCurrent>
    <us-gaap:ConstructionContractorReceivableRetainage
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000996"
      unitRef="USD">51694000</us-gaap:ConstructionContractorReceivableRetainage>
    <us-gaap:ConstructionContractorReceivableRetainage
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact000997"
      unitRef="USD">43231000</us-gaap:ConstructionContractorReceivableRetainage>
    <us-gaap:ContractWithCustomerAssetGrossCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact000999"
      unitRef="USD">58115000</us-gaap:ContractWithCustomerAssetGrossCurrent>
    <us-gaap:ContractWithCustomerAssetGrossCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001000"
      unitRef="USD">52315000</us-gaap:ContractWithCustomerAssetGrossCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001002"
      unitRef="USD">29701000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001003"
      unitRef="USD">31809000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001005"
      unitRef="USD">28414000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001006"
      unitRef="USD">20506000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="From2026-01-012026-06-30_custom_ContractLiabilitiesMember"
      id="Fact001008">&lt;p id="xdx_89E_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_hus-gaap--FairValueByLiabilityClassAxis__custom--ContractLiabilitiesMember_zFpKlaO5PLok" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of contract liabilities are presented in the table below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zGUCqnDUtWIj" style="display: none"&gt;Schedule of Contract Assets and Liabilities&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20260630_ziRGyuM3YwEh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;br/&gt; 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20251231_zO6Dg5g3EsGh" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;br/&gt; 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_ecustom--BillingsInExcessOfCosts_iI_pn3n3_zccOCan23m5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Billings in excess of costs&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;122,407&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;104,376&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms_iI_pn3n3_zNkZz0xWejM3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Advances from customers on uncompleted contracts&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;52,463&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;47,054&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--ContractWithCustomerLiability_iTI_pn3n3_zQyaKNqiIDWj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total contract liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;174,780&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;151,430&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--ContractWithCustomerLiabilityCurrent_iI_pn3n3_zWF9p2jHZEre" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;173,825&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;149,442&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--ContractWithCustomerLiabilityNoncurrent_iI_pn3n3_z1ztisJRlDfb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Contract liabilities &#x2013; non-current&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,045&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,988&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <TGLS:BillingsInExcessOfCosts
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001010"
      unitRef="USD">122407000</TGLS:BillingsInExcessOfCosts>
    <TGLS:BillingsInExcessOfCosts
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001011"
      unitRef="USD">104376000</TGLS:BillingsInExcessOfCosts>
    <us-gaap:ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001013"
      unitRef="USD">52463000</us-gaap:ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms>
    <us-gaap:ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001014"
      unitRef="USD">47054000</us-gaap:ProgressPaymentsNettedAgainstInventoryForLongTermContractsOrPrograms>
    <us-gaap:ContractWithCustomerLiability
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001016"
      unitRef="USD">174780000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001017"
      unitRef="USD">151430000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001019"
      unitRef="USD">173825000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001020"
      unitRef="USD">149442000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001022"
      unitRef="USD">1045000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001023"
      unitRef="USD">1988000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001025"
      unitRef="USD">11336000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001027"
      unitRef="USD">23274000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001029"
      unitRef="USD">10314000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001031"
      unitRef="USD">16858000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="AsOf2026-06-30"
      decimals="-5"
      id="Fact001033"
      unitRef="USD">884200000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact001035"
      unitRef="Pure">1</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="AsOf2026-12-31_srt_ScenarioForecastMember"
      decimals="-5"
      id="Fact001037"
      unitRef="USD">309200000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="AsOf2027-12-31_srt_ScenarioForecastMember"
      decimals="-5"
      id="Fact001039"
      unitRef="USD">409800000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="AsOf2028-12-31_srt_ScenarioForecastMember"
      decimals="-5"
      id="Fact001041"
      unitRef="USD">165200000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001043">&lt;p id="xdx_80C_eus-gaap--IntangibleAssetsDisclosureTextBlock_zZHm4LIRVTue" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
6. &lt;span id="xdx_82B_zPh5XTaFUJWb"&gt;Intangible Assets and Goodwill&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Intangible
assets include Miami-Dade County Notices of Acceptances (NOA&#x2019;s), which are certificates issued for approved products and required
to market hurricane-resistant glass in Florida. Intangibles assets also include the intangibles acquired during the acquisition of Continental.&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zJEtlT6afeGg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B2_zgPqPWQP47U6" style="display: none"&gt;Schedule
of Finite-Lived Intangible Assets, Net&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30, 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Acc. Amort.&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 52%; text-align: left"&gt;Trade Names&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z3l7t0AkAre4" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;170&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z03FerkIl98a" style="width: 12%; text-align: right" title="Accumulated Amortization"&gt;(50&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zKown4y1hhFl" style="width: 12%; text-align: right" title="Intangible assets, net"&gt;120&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Software and licenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zVU9uK6uFXdc" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;20,171&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zCyRpRBlTM1a" style="text-align: right" title="Accumulated Amortization"&gt;(11,326&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z1UjXtWGHmJ3" style="text-align: right" title="Intangible assets, net"&gt;8,845&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Notice of Acceptances (NOAs), product designs and other intellectual property&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zMKzdVlqBoic" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zn4pRrSwNhxd" style="text-align: right" title="Accumulated Amortization"&gt;(1,826&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zppZY0Ycb2Gd" style="text-align: right" title="Intangible assets, net"&gt;4,434&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Contract Backlog&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_z6kxqXAHwYga" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;670&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_ztsOolILwJOc" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization"&gt;(261&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zMEzQmVhbGN2" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net"&gt;409&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630_zJocKqTQvUb3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Gross"&gt;27,271&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630_z2fnNRIGFtE3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Accumulated amortization"&gt;(13,463&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630_zgjVUUU7eLD3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Net"&gt;13,808&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31, 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Acc. Amort.&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 52%; text-align: left"&gt;Trade Names&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zxBdjQeM9fP7" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;170&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zK0QQZjfwQW4" style="width: 12%; text-align: right" title="Accumulated Amortization"&gt;(28&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zGmvYsyRWuv3" style="width: 12%; text-align: right" title="Intangible assets, net"&gt;142&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Software and licenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zWvOi1i7CdMe" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;17,217&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z7Qvkk0NnEqj" style="text-align: right" title="Accumulated Amortization"&gt;(10,138&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zDl4omBQPRO8" style="text-align: right" title="Intangible assets, net"&gt;7,079&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Notice of Acceptances (NOAs), product designs and other intellectual property&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zzWE20t4BOuh" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zemG0a6RpqJ8" style="text-align: right" title="Accumulated Amortization"&gt;(1,043&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zh664U8T6lyb" style="text-align: right" title="Intangible assets, net"&gt;5,217&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Contract Backlog&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zebUkhamiKl4" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;670&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zmSON1bHG1w7" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization"&gt;(149&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zYXuNTS0kx5k" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net"&gt;521&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;Total&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231_zPUY59nSLvfc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Gross"&gt;24,317&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231_zoylhdMoerOe" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Accumulated amortization"&gt;(11,358&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;)&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231_z0U6rPUqYo26" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Net"&gt;12,959&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
weighted average amortization period is &lt;span id="xdx_90C_eus-gaap--AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_dtY_c20260101__20260630_z3kpxZEXVJ2" title="Weighted average amortization period"&gt;2.9&lt;/span&gt; years.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the three and six months ended June 30, 2026, the amortization expense amounted to $&lt;span id="xdx_904_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20260401__20260630_zLEeMVI87Ssb" title="Amortization expense"&gt;974&lt;/span&gt; and $&lt;span id="xdx_90B_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20260101__20260630_z6Gy3gZ3BCs7" title="Amortization expense"&gt;1883&lt;/span&gt;, respectively, and was included within
the general and administration expenses in our unaudited Condensed Consolidated Statement of Operations. Similarly, during the three
and six ended June 30, 2025, the amortization expense amounted to $&lt;span id="xdx_905_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20250401__20250630_z05FjjMLj6K4" title="Amortization expense"&gt;645&lt;/span&gt; and $&lt;span id="xdx_90F_eus-gaap--AmortizationOfIntangibleAssets_pn3n3_c20250101__20250630_zo4ij6dVAhpj" title="Amortization expense"&gt;950&lt;/span&gt;, respectively.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_898_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zgsekQ8ROY1k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
estimated aggregate amortization expense for each of the five succeeding years as of June 30, 2026, is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B1_zYIzH0kotrj" style="display: none"&gt;Schedule
of Finite Lived Intangible Assets Future Amortization Expense&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Year ending December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20260630_zcet4z2JRQJ4"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_iI_pn3n3_maFLIANz7hA_zxaJIsiZodok" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;2,079&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pn3n3_maFLIANz7hA_z64P5znWSvY3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,706&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pn3n3_maFLIANz7hA_zz6fU66FWiza" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center"&gt;2028&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,257&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pn3n3_maFLIANz7hA_zmD0V24KrTj5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2029&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,890&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_ecustom--FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_iI_pn3n3_maFLIANz7hA_zQiFSNevhO6b" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center; padding-bottom: 1pt"&gt;Thereafter&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,876&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_pn3n3_mtFLIANz7hA_z7o5FlORlrd2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center; padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;13,808&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001045">&lt;p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zJEtlT6afeGg" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B2_zgPqPWQP47U6" style="display: none"&gt;Schedule
of Finite-Lived Intangible Assets, Net&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30, 2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Acc. Amort.&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 52%; text-align: left"&gt;Trade Names&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z3l7t0AkAre4" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;170&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_z03FerkIl98a" style="width: 12%; text-align: right" title="Accumulated Amortization"&gt;(50&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zKown4y1hhFl" style="width: 12%; text-align: right" title="Intangible assets, net"&gt;120&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Software and licenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zVU9uK6uFXdc" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;20,171&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zCyRpRBlTM1a" style="text-align: right" title="Accumulated Amortization"&gt;(11,326&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z1UjXtWGHmJ3" style="text-align: right" title="Intangible assets, net"&gt;8,845&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Notice of Acceptances (NOAs), product designs and other intellectual property&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zMKzdVlqBoic" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zn4pRrSwNhxd" style="text-align: right" title="Accumulated Amortization"&gt;(1,826&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zppZY0Ycb2Gd" style="text-align: right" title="Intangible assets, net"&gt;4,434&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Contract Backlog&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_z6kxqXAHwYga" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;670&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_ztsOolILwJOc" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization"&gt;(261&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zMEzQmVhbGN2" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net"&gt;409&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20260630_zJocKqTQvUb3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Gross"&gt;27,271&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20260630_z2fnNRIGFtE3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Accumulated amortization"&gt;(13,463&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20260630_zgjVUUU7eLD3" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, Net"&gt;13,808&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="10" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;December 31, 2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Acc. Amort.&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 52%; text-align: left"&gt;Trade Names&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zxBdjQeM9fP7" style="width: 12%; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;170&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zK0QQZjfwQW4" style="width: 12%; text-align: right" title="Accumulated Amortization"&gt;(28&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--TradeNamesMember_zGmvYsyRWuv3" style="width: 12%; text-align: right" title="Intangible assets, net"&gt;142&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Software and licenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zWvOi1i7CdMe" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;17,217&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_z7Qvkk0NnEqj" style="text-align: right" title="Accumulated Amortization"&gt;(10,138&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--SoftwareAndLicensesMember_zDl4omBQPRO8" style="text-align: right" title="Intangible assets, net"&gt;7,079&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Notice of Acceptances (NOAs), product designs and other intellectual property&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zzWE20t4BOuh" style="text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;6,260&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zemG0a6RpqJ8" style="text-align: right" title="Accumulated Amortization"&gt;(1,043&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember_zh664U8T6lyb" style="text-align: right" title="Intangible assets, net"&gt;5,217&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Contract Backlog&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zebUkhamiKl4" style="border-bottom: Black 1pt solid; text-align: right" title="Finite-Lived Intangible Assets, Gross"&gt;670&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zmSON1bHG1w7" style="border-bottom: Black 1pt solid; text-align: right" title="Accumulated Amortization"&gt;(149&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__custom--ContractBacklogMember_zYXuNTS0kx5k" style="border-bottom: Black 1pt solid; text-align: right" title="Intangible assets, net"&gt;521&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;Total&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pn3n3_c20251231_zPUY59nSLvfc" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Gross"&gt;24,317&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iNI_pn3n3_di_c20251231_zoylhdMoerOe" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Accumulated amortization"&gt;(11,358&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;)&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--FiniteLivedIntangibleAssetsNet_iI_pn3n3_c20251231_z0U6rPUqYo26" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right" title="Intangible assets, Net"&gt;12,959&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2026-06-30_us-gaap_TradeNamesMember"
      decimals="-3"
      id="Fact001047"
      unitRef="USD">170000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2026-06-30_us-gaap_TradeNamesMember"
      decimals="-3"
      id="Fact001049"
      unitRef="USD">50000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2026-06-30_us-gaap_TradeNamesMember"
      decimals="-3"
      id="Fact001051"
      unitRef="USD">120000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2026-06-30_custom_SoftwareAndLicensesMember"
      decimals="-3"
      id="Fact001053"
      unitRef="USD">20171000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2026-06-30_custom_SoftwareAndLicensesMember"
      decimals="-3"
      id="Fact001055"
      unitRef="USD">11326000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2026-06-30_custom_SoftwareAndLicensesMember"
      decimals="-3"
      id="Fact001057"
      unitRef="USD">8845000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember"
      decimals="-3"
      id="Fact001059"
      unitRef="USD">6260000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember"
      decimals="-3"
      id="Fact001061"
      unitRef="USD">1826000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2026-06-30_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember"
      decimals="-3"
      id="Fact001063"
      unitRef="USD">4434000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2026-06-30_custom_ContractBacklogMember"
      decimals="-3"
      id="Fact001065"
      unitRef="USD">670000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2026-06-30_custom_ContractBacklogMember"
      decimals="-3"
      id="Fact001067"
      unitRef="USD">261000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2026-06-30_custom_ContractBacklogMember"
      decimals="-3"
      id="Fact001069"
      unitRef="USD">409000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001071"
      unitRef="USD">27271000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001073"
      unitRef="USD">13463000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001075"
      unitRef="USD">13808000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-12-31_us-gaap_TradeNamesMember"
      decimals="-3"
      id="Fact001077"
      unitRef="USD">170000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-12-31_us-gaap_TradeNamesMember"
      decimals="-3"
      id="Fact001079"
      unitRef="USD">28000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-12-31_us-gaap_TradeNamesMember"
      decimals="-3"
      id="Fact001081"
      unitRef="USD">142000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-12-31_custom_SoftwareAndLicensesMember"
      decimals="-3"
      id="Fact001083"
      unitRef="USD">17217000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-12-31_custom_SoftwareAndLicensesMember"
      decimals="-3"
      id="Fact001085"
      unitRef="USD">10138000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-12-31_custom_SoftwareAndLicensesMember"
      decimals="-3"
      id="Fact001087"
      unitRef="USD">7079000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember"
      decimals="-3"
      id="Fact001089"
      unitRef="USD">6260000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember"
      decimals="-3"
      id="Fact001091"
      unitRef="USD">1043000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-12-31_custom_NoticeOfAcceptancesProductDesignsAndIntellectualPropertyMember"
      decimals="-3"
      id="Fact001093"
      unitRef="USD">5217000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-12-31_custom_ContractBacklogMember"
      decimals="-3"
      id="Fact001095"
      unitRef="USD">670000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-12-31_custom_ContractBacklogMember"
      decimals="-3"
      id="Fact001097"
      unitRef="USD">149000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-12-31_custom_ContractBacklogMember"
      decimals="-3"
      id="Fact001099"
      unitRef="USD">521000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001101"
      unitRef="USD">24317000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001103"
      unitRef="USD">11358000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001105"
      unitRef="USD">12959000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="From2026-01-01to2026-06-30" id="Fact001107">P2Y10M24D</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001109"
      unitRef="USD">974000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001111"
      unitRef="USD">1883000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001113"
      unitRef="USD">645000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001115"
      unitRef="USD">950000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001117">&lt;p id="xdx_898_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zgsekQ8ROY1k" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
estimated aggregate amortization expense for each of the five succeeding years as of June 30, 2026, is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B1_zYIzH0kotrj" style="display: none"&gt;Schedule
of Finite Lived Intangible Assets Future Amortization Expense&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Year ending December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20260630_zcet4z2JRQJ4"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_iI_pn3n3_maFLIANz7hA_zxaJIsiZodok" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;2,079&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_pn3n3_maFLIANz7hA_z64P5znWSvY3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,706&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_pn3n3_maFLIANz7hA_zz6fU66FWiza" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center"&gt;2028&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,257&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_iI_pn3n3_maFLIANz7hA_zmD0V24KrTj5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2029&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,890&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_ecustom--FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree_iI_pn3n3_maFLIANz7hA_zQiFSNevhO6b" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center; padding-bottom: 1pt"&gt;Thereafter&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;2,876&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_pn3n3_mtFLIANz7hA_z7o5FlORlrd2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center; padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;13,808&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001119"
      unitRef="USD">2079000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001121"
      unitRef="USD">3706000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001123"
      unitRef="USD">3257000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001125"
      unitRef="USD">1890000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <TGLS:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001127"
      unitRef="USD">2876000</TGLS:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001129"
      unitRef="USD">13808000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:SupplierFinanceProgramTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001131">&lt;p id="xdx_804_eus-gaap--SupplierFinanceProgramTextBlock_z5J5dKrUc4lk" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
7. &lt;span id="xdx_821_zQQ6hs0hhia3"&gt;Supplier Finance Program&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Tecnoglass
has established payment times to suppliers for the purchase of goods and services, which normally range between 30 and 60 days. In the
normal course of business, suppliers may require liquidity and manage, through third parties, the advanced payment of invoices. The Company
allows its suppliers the option to payments in advance of an invoice due date, through a third-party finance provider or intermediary,
with the purpose of allowing suppliers to obtain the required liquidity. For these purposes, suppliers present to Tecnoglass. the third-party
finance provider or intermediary with whom they will carry out the finance program and establish an agreement, through which the invoices
will be paid by the third-party finance provider or intermediary once Tecnoglass. has confirmed the invoices as valid. Once the Company
confirms the invoices are valid, the third-party finance provider or intermediary proceeds with the payment to the supplier. Subsequently,
Tecnoglass. pays the invoices for goods or services to the third-party finance provider or intermediary selected by the supplier. Payment
times do not vary from those initially agreed with the supplier, as stated in the invoices factored by the supplier (i.e. between 30
and 60 days). Pursuant to the supplier finance programs, the Company has not been required to pledge any assets as security nor to provide
any guarantee to third-party finance provider or intermediary.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30, 2026, the obligations outstanding related to the supplier finance program amounted to $&lt;span id="xdx_907_eus-gaap--ProgramRightsObligationsCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember_zipgirXujzT5" title="Current liabilities"&gt;21,686&lt;/span&gt;, recorded as current liabilities,
in the following balance sheet lines: Trade accounts payable and accrued expenses $&lt;span id="xdx_90D_eus-gaap--AccountsPayableAndAccruedLiabilitiesCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember_zw42jX6vHlE3" title="Trade accounts payable and accrued expenses"&gt;21,000&lt;/span&gt; &amp;amp; due to related parties $&lt;span id="xdx_909_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_c20260630__us-gaap--FinancialInstrumentAxis__custom--SupplierFinanceProgramMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z7FfVOjtfZFk" title="Due to related parties"&gt;686&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

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

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



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

</us-gaap:SupplierFinanceProgramTextBlock>
    <us-gaap:ProgramRightsObligationsCurrent
      contextRef="AsOf2026-06-30_custom_SupplierFinanceProgramMember"
      decimals="-3"
      id="Fact001133"
      unitRef="USD">21686000</us-gaap:ProgramRightsObligationsCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent
      contextRef="AsOf2026-06-30_custom_SupplierFinanceProgramMember"
      decimals="-3"
      id="Fact001135"
      unitRef="USD">21000000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2026-06-30_custom_SupplierFinanceProgramMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001137"
      unitRef="USD">686000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001139">&lt;p id="xdx_809_eus-gaap--DebtDisclosureTextBlock_zoPRihiHX3ae" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
8. &lt;span id="xdx_821_z63VGBErlsp6"&gt;Debt&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_89D_eus-gaap--ScheduleOfDebtTableTextBlock_zqroHGjSV2Zb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s debt is comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zUAMA1IoEP13" style="display: none"&gt;Schedule
of Long Term Debt&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20260630_zBrwsD09L7C4" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2026&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20251231_zPCw4xNhWhLe" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2025&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--LineOfCredit_iI_pn3n3_maDICAz25p_zfDvXXBSUxak" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Revolving lines of credit&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;596&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;387&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--FinanceLeaseDebt_iI_pn3n3_maDICAz25p_zQrd7r0fvOl7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Finance lease&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,941&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;41&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--OtherLongTermDebtCurrent_iI_pn3n3_maDICAz25p_zJSuht5VM5U4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Other current debt&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4,628&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1150"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_ecustom--SeniorSecuredCreditFacility_iI_pn3n3_maDICAz25p_zFCpW5VmIm9f" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Senior Secured Credit Facility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;219,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;174,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredCostsCurrent_iNI_pn3n3_di_msDICAz25p_z7iX7LuTVuwf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: Deferred cost of financing&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,771&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,799&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--DebtInstrumentCarryingAmount_iTI_pn3n3_mtDICAz25p_zOpTgQg8J8o9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total obligations under borrowing arrangements&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;225,394&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;171,629&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LongTermDebtCurrent_iI_pn3n3_zm5L7pvndEFk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Less: Current portion of long-term debt and other current borrowings&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;6,156&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;427&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zQxvtU6anWL3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Long-term debt&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;219,238&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;171,202&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
September 2025, the Company entered into a new Senior Secured Credit Facility, transitioning from a term loan and revolving facility
structure to a fully committed revolving facility structure which allowed the Company to (i) increase total committed borrowing capacity
from $&lt;span id="xdx_901_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__srt--RangeAxis__srt--MinimumMember_zFNj7oG07T19" title="Line of credit facility, maximum borrowing capacity"&gt;150&lt;/span&gt; million to $&lt;span id="xdx_90A_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__srt--RangeAxis__srt--MaximumMember_z1Fm7qfpNlIl" title="Line of credit facility, maximum borrowing capacity"&gt;500&lt;/span&gt; million, (ii) reduce borrowing costs by approximately 25 basis points, and (iii) &lt;span id="xdx_905_eus-gaap--DebtInstrumentMaturityDateDescription_c20250901__20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zlUn6yBJ33xa" title="Extend initial maturity"&gt;extend the initial maturity
date by five years to December 2030&lt;/span&gt;. Borrowings under the new facility bear interest at the Secured Overnight Financing Rate (SOFR) with
no floor, plus a spread of &lt;span id="xdx_909_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_dp_c20250930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_zk2GgA17kW03" title="Debt instrument interest rate effective percentage"&gt;1.25&lt;/span&gt; % based on the Company&#x2019;s net leverage ratio (previously &lt;span id="xdx_909_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_dp_c20240930__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_zfKBge0laGYl" title="Debt instrument interest rate effective percentage"&gt;1.50&lt;/span&gt; % over SOFR). The effective interest
rate for the facility, including deferred issuance costs, is &lt;span id="xdx_908_eus-gaap--DebtInstrumentInterestRateEffectivePercentage_iI_pid_dp_uPure_c20251231__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zrDjavuw3tAb" title="Debt instrument interest rate effective percentage"&gt;6.98&lt;/span&gt; % as of December 31, 2025. The Company incurred total costs and fees
of $&lt;span id="xdx_905_eus-gaap--PaymentsOfDebtIssuanceCosts_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zAzEIzI4kLK1" title="Cost and fees"&gt;2,783&lt;/span&gt; in lender fees which were capitalized as deferred financing costs, and are presented as a deduction from the related debt liability.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
transaction was accounted for as a debt extinguishment under ASC 470-50. Accordingly, the prior term-loan and revolving credit facilities
were derecognized, and the new revolving facility was initially recognized at its principal amount, net of deferred financing costs.
As a result, the Company recognized a loss on extinguishment of debt of $&lt;span id="xdx_905_eus-gaap--GainsLossesOnExtinguishmentOfDebt_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zy5Zu1Sf440a" title="Loss on extinguishment of debt"&gt;1,354&lt;/span&gt;, representing $&lt;span id="xdx_903_eus-gaap--WriteOffOfDeferredDebtIssuanceCost_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zs6wW6M2s9a4" title="Write-off of the remaining unamortized"&gt;1,302&lt;/span&gt; for the write-off of the remaining
unamortized deferred financing costs related to the prior term-loan and revolving credit facilities, and $&lt;span id="xdx_909_ecustom--TerminationCosts_iI_pn3n3_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zF7DuvtkiV87" title="Termination costs"&gt;52&lt;/span&gt; of termination costs associated
with closing the prior facility. Cash proceeds from the new facility and repayments of the extinguished debt are reflected within financing
activities in the condensed consolidated statements of cash flows. Of the $&lt;span id="xdx_905_eus-gaap--LegalFees_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zLjtg91xWSXl" title="Cost and fees"&gt;2,783&lt;/span&gt; of total fees incurred, $&lt;span id="xdx_903_ecustom--DeductedFromProceedsFromIssuanceOfDebt_pn3n3_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zHYfYbv2cW1h" title="Deducted from proceeds from debt"&gt;1,803&lt;/span&gt; were deducted from the
gross proceeds and presented net within &#x201c;Proceeds from debt,&#x201d; with the remaining $&lt;span id="xdx_902_eus-gaap--DeferredFinanceCostsNoncurrentNet_iI_pn3n3_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zTlWJZtRLl6d" title="Deferred financing costs"&gt;980&lt;/span&gt; recorded as cash outflows classified
under &#x201c;Deferred financing costs and debt issuance fees&#x201d; within financing activities. During the six months ended June 30,
2026, the Company drew down $&lt;span id="xdx_904_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zeXNosJs2Sue" title="Line of credit facility, maximum borrowing capacity"&gt;60&lt;/span&gt; million from its revolving credit facility and repaid $&lt;span id="xdx_902_eus-gaap--RepaymentsOfDebt_pn6n6_c20260101__20260630__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zE2Hcw7aljKj" title="Repayment of debt"&gt;15&lt;/span&gt; million.&lt;/span&gt;&lt;/p&gt;

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

&lt;p id="xdx_895_ecustom--ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_zSptocCGhae8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Interest
income (expense), net and deferred cost of financing is comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_z8vdT2WE77Zk" style="display: none"&gt;Schedule
of Interest Income Expenses net and deferred cost&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20260401__20260630_zcVHem3o8NPb" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20250401__20250630_zVXBRh38ofH2" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49B_20260101__20260630_zlGnmU86udy2" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20250101__20250630_zUg2JWZ9t7n3" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Three months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Six months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Interest income (expense), net and deferred cost of financing:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--InterestExpense_zaRt1R0lv1L7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;Interest expense&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(3,429&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(1,078&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(5,957&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(2,126&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_ecustom--DeferredCostsOfFinancing_pn3n3_zFvOzCfn0f13" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Deferred cost of financing&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(155&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(272&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(307&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(555&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_ecustom--DerivativeFinancialInstrumentGain_pn3n3_zUtkCx1oGbkb" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Derivative financial instrument loss&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;64&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1210"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(279&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1212"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--InterestIncomeExpenseNetAndDeferredCostOfFinancing_pn3n3_zCyfhwPssEu" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Interest expense, net and deferred cost of financing:&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(3,520&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(1,350&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(6,543&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(2,681&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p id="xdx_89B_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zzUeOdw9MFh3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Maturities
of long-term debt and other current borrowings as of June 30, 2026, are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B6_zsvW6Jt2HlAf" style="display: none"&gt;Schedule
of Maturities of Long Term Debt&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_493_20260630_zXarcZsz5imh" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pn3n3_maLTDz5iw_z6Anyjgfa8O5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;6,156&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pn3n3_maLTDz5iw_z4XZ9VHLuvvj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;953&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pn3n3_maLTDz5iw_zpE5uMoL9Eel" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center"&gt;2028&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;848&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pn3n3_maLTDz5iw_zHpXBDOYxhJe" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2029&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;769&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_iI_pn3n3_maLTDz5iw_zyZ6FV50IIZh" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center; padding-bottom: 1pt"&gt;2030&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;219,439&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--LongTermDebt_iTI_pn3n3_mtLTDz5iw_zEgtsOiRKiQd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center; padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;228,165&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s loans have maturities ranging from &lt;span id="xdx_902_eus-gaap--DebtInstrumentMaturityDateDescription_c20260101__20260630_zfkJnw2DL4K3" title="Loan maturity period description"&gt;several weeks to 5 years&lt;/span&gt;. Our credit facilities bore a weighted average interest rate
of &lt;span id="xdx_903_eus-gaap--DebtWeightedAverageInterestRate_iI_pid_dp_uPure_c20260630_zRnBefXa0Ol6" title="Debt, weighted average interest rate"&gt;5.14&lt;/span&gt;% as of June 30, 2026.&lt;/span&gt;&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30, 2026, the Company had right-of-use assets (&#x201c;ROU assets&#x201d;) of $&lt;span id="xdx_90A_eus-gaap--FinanceLeaseRightOfUseAsset_iI_pn3n3_c20260630_zh1lPIhz4Mch" title="Right-of-use assets"&gt;3,905&lt;/span&gt; included within Property, Plant and Equipment,
and lease liabilities of $&lt;span id="xdx_903_ecustom--FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities_iI_pn3n3_c20260630_zNlJqJBlATMh" title="Finance lease right of use asset included property, plant and equipment, and lease liabilities"&gt;3,941&lt;/span&gt; on its Condensed Consolidated Balance Sheet, of which $&lt;span id="xdx_902_ecustom--FinanceLeaseShortTermDebt_iI_pn3n3_c20260630_zKT5wAdzY0k" title="Finance lease, short-term debt"&gt;932&lt;/span&gt; is presented within short-term debt and current
portion of long-term debt and $&lt;span id="xdx_906_ecustom--FinanceLeaseLongTermDebt_iI_pn3n3_c20260630_zJyaXfJHMO3l" title="Finance lease, long-term debt"&gt;3,009 &lt;/span&gt;is classified as long-term debt. These leases primarily relate to real estate, including showrooms,
office space and industrial warehouses, as well as computing equipment. Certain lease agreements include options to extend the lease
term; however, the Company does not consider these options reasonably certain of exercise.&lt;/span&gt;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company recognizes amortization of ROU assets and interest expense on lease liabilities in its Condensed Consolidated Statements of Income.
During the three and six months ended June 30, 2026, the Company recorded ROU asset amortization of $&lt;span id="xdx_90A_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_pn3n3_c20260401__20260630_zKizE0iXHTD1" title="ROU asset amortization"&gt;306&lt;/span&gt;, and $&lt;span id="xdx_905_eus-gaap--FinanceLeaseRightOfUseAssetAmortization_pn3n3_c20260101__20260630_zOEROls5Mvte" title="ROU asset amortization"&gt;564&lt;/span&gt;, respectively; and
interest expense of $&lt;span id="xdx_902_eus-gaap--FinanceLeaseInterestExpense_pn3n3_c20260401__20260630_zn9koH9xWrud" title="Interest expense"&gt;43&lt;/span&gt;, and $&lt;span id="xdx_909_eus-gaap--FinanceLeaseInterestExpense_pn3n3_c20260101__20260630_z1A4OwQ3t881" title="Interest expense"&gt;68&lt;/span&gt;, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Cash
paid for amounts included in the measurement of lease liabilities was $&lt;span id="xdx_903_eus-gaap--FinanceLeasePrincipalPayments_pn3n3_c20260101__20260630_zeBJqx4e7xE7" title="Cash paid for amounts included in the measurement of lease liabilities"&gt;702 &lt;/span&gt;for the six months ended June 30, 2026, consisting of $&lt;span id="xdx_90D_ecustom--FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows_pn3n3_c20260101__20260630_zUuKCnNcL7F1" title="Cash paid for amounts included in measurement of lease liabilities classified as operating cash flows"&gt;68&lt;/span&gt;
classified as operating cash flows and $&lt;span id="xdx_906_ecustom--FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows_pn3n3_c20260101__20260630_zIOY0tDtUQIf" title="Cash paid for amounts included in measurement of lease liabilities classified as financing cash flows"&gt;634&lt;/span&gt; classified as financing cash flows. Non-cash additions to ROU assets in exchange for lease
liabilities were $&lt;span id="xdx_906_ecustom--NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities_iI_pn3n3_c20260630_zWDqc8WB5JX1" title="Non-cash additions to ROU assets in exchange for lease liabilities"&gt;3,073&lt;/span&gt; during the period.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_899_eus-gaap--FinanceLeaseLiabilityMaturityTableTextBlock_z7a8ivTHQip" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Future
minimum lease payments for the years ended June 30, of each year are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_zKECQKN054Oh" style="display: none"&gt;Schedule of Future Minimum Lease Payments&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_49B_20260630_zQQZ7DEYBikh" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pn3n3_zWBhkFopt9g2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left"&gt;2026&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;1,078&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearTwo_iI_pn3n3_zhrEp3LZ9gv7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,060&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearThree_iI_pn3n3_z6tmBx8N7AVj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;2028&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;917&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearFour_iI_pn3n3_z3Gl9HXjabKl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;2029&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;804&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_ecustom--FinanceLeaseLiabilityPaymentsDueAfterYearFour_iI_pn3n3_zjJajX02UxC9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;2030 and thereafter&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;446&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--FinanceLeaseLiabilityPaymentsDue_iTI_pn3n3_z4SBllCmOa59" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Total undiscounted cashflows&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4,304&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--FinanceLeaseLiabilityUndiscountedExcessAmount_iI_pn3n3_z2VnQPwvzcpa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Less: Imputed Interest&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;363&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--FinanceLeaseLiability_iTI_pn3n3_zcb1X4lTuAq3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Present value of lease liability&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,941&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AF_z0D9f9U93uTl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30, 2026, the weighted-average remaining lease term for finance leases was &lt;span id="xdx_901_eus-gaap--FinanceLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20260630_z1EaGXWZYQhc" title="Weighted-average remaining lease term"&gt;4.1&lt;/span&gt; years and the weighted-average discount rate was
&lt;span id="xdx_908_eus-gaap--FinanceLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20260630_zxxUrJ0AVp08" title="Weighted-average discount rate"&gt;4.2&lt;/span&gt;%.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;



&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001141">&lt;p id="xdx_89D_eus-gaap--ScheduleOfDebtTableTextBlock_zqroHGjSV2Zb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s debt is comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zUAMA1IoEP13" style="display: none"&gt;Schedule
of Long Term Debt&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20260630_zBrwsD09L7C4" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2026&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20251231_zPCw4xNhWhLe" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2025&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--LineOfCredit_iI_pn3n3_maDICAz25p_zfDvXXBSUxak" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Revolving lines of credit&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;596&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;387&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--FinanceLeaseDebt_iI_pn3n3_maDICAz25p_zQrd7r0fvOl7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Finance lease&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,941&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;41&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--OtherLongTermDebtCurrent_iI_pn3n3_maDICAz25p_zJSuht5VM5U4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Other current debt&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4,628&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1150"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_ecustom--SeniorSecuredCreditFacility_iI_pn3n3_maDICAz25p_zFCpW5VmIm9f" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Senior Secured Credit Facility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;219,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;174,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredCostsCurrent_iNI_pn3n3_di_msDICAz25p_z7iX7LuTVuwf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Less: Deferred cost of financing&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,771&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,799&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--DebtInstrumentCarryingAmount_iTI_pn3n3_mtDICAz25p_zOpTgQg8J8o9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Total obligations under borrowing arrangements&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;225,394&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;171,629&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LongTermDebtCurrent_iI_pn3n3_zm5L7pvndEFk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Less: Current portion of long-term debt and other current borrowings&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;6,156&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;427&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zQxvtU6anWL3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Long-term debt&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;219,238&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;171,202&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:LineOfCredit
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001143"
      unitRef="USD">596000</us-gaap:LineOfCredit>
    <us-gaap:LineOfCredit
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001144"
      unitRef="USD">387000</us-gaap:LineOfCredit>
    <TGLS:FinanceLeaseDebt
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001146"
      unitRef="USD">3941000</TGLS:FinanceLeaseDebt>
    <TGLS:FinanceLeaseDebt
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001147"
      unitRef="USD">41000</TGLS:FinanceLeaseDebt>
    <us-gaap:OtherLongTermDebtCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001149"
      unitRef="USD">4628000</us-gaap:OtherLongTermDebtCurrent>
    <TGLS:SeniorSecuredCreditFacility
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001152"
      unitRef="USD">219000000</TGLS:SeniorSecuredCreditFacility>
    <TGLS:SeniorSecuredCreditFacility
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001153"
      unitRef="USD">174000000</TGLS:SeniorSecuredCreditFacility>
    <us-gaap:DeferredCostsCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001155"
      unitRef="USD">2771000</us-gaap:DeferredCostsCurrent>
    <us-gaap:DeferredCostsCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001156"
      unitRef="USD">2799000</us-gaap:DeferredCostsCurrent>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001158"
      unitRef="USD">225394000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001159"
      unitRef="USD">171629000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:LongTermDebtCurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001161"
      unitRef="USD">6156000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001162"
      unitRef="USD">427000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001164"
      unitRef="USD">219238000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001165"
      unitRef="USD">171202000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MinimumMember"
      decimals="-6"
      id="Fact001167"
      unitRef="USD">150000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_srt_MaximumMember"
      decimals="-6"
      id="Fact001169"
      unitRef="USD">500000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentMaturityDateDescription
      contextRef="From2025-09-012025-09-30_custom_SeniorSecuredCreditFacilityMember"
      id="Fact001171">extend the initial maturity
date by five years to December 2030</us-gaap:DebtInstrumentMaturityDateDescription>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="AsOf2025-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember"
      decimals="INF"
      id="Fact001173"
      unitRef="Pure">0.0125</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="AsOf2024-09-30_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember"
      decimals="INF"
      id="Fact001175"
      unitRef="Pure">0.0150</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="AsOf2025-12-31_custom_SeniorSecuredCreditFacilityMember"
      decimals="INF"
      id="Fact001177"
      unitRef="Pure">0.0698</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-3"
      id="Fact001179"
      unitRef="USD">2783000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-3"
      id="Fact001181"
      unitRef="USD">1354000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-3"
      id="Fact001183"
      unitRef="USD">1302000</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <TGLS:TerminationCosts
      contextRef="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-3"
      id="Fact001185"
      unitRef="USD">52000</TGLS:TerminationCosts>
    <us-gaap:LegalFees
      contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-3"
      id="Fact001187"
      unitRef="USD">2783000</us-gaap:LegalFees>
    <TGLS:DeductedFromProceedsFromIssuanceOfDebt
      contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-3"
      id="Fact001189"
      unitRef="USD">1803000</TGLS:DeductedFromProceedsFromIssuanceOfDebt>
    <us-gaap:DeferredFinanceCostsNoncurrentNet
      contextRef="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-3"
      id="Fact001191"
      unitRef="USD">980000</us-gaap:DeferredFinanceCostsNoncurrentNet>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-6"
      id="Fact001193"
      unitRef="USD">60000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:RepaymentsOfDebt
      contextRef="From2026-01-012026-06-30_custom_SeniorSecuredCreditFacilityMember"
      decimals="-6"
      id="Fact001195"
      unitRef="USD">15000000</us-gaap:RepaymentsOfDebt>
    <TGLS:ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001197">&lt;p id="xdx_895_ecustom--ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock_zSptocCGhae8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Interest
income (expense), net and deferred cost of financing is comprised of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B3_z8vdT2WE77Zk" style="display: none"&gt;Schedule
of Interest Income Expenses net and deferred cost&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20260401__20260630_zcVHem3o8NPb" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20250401__20250630_zVXBRh38ofH2" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49B_20260101__20260630_zlGnmU86udy2" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20250101__20250630_zUg2JWZ9t7n3" style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Three months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Six months ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Interest income (expense), net and deferred cost of financing:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--InterestExpense_zaRt1R0lv1L7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;Interest expense&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(3,429&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(1,078&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(5,957&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(2,126&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_ecustom--DeferredCostsOfFinancing_pn3n3_zFvOzCfn0f13" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Deferred cost of financing&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(155&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(272&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(307&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(555&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_ecustom--DerivativeFinancialInstrumentGain_pn3n3_zUtkCx1oGbkb" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Derivative financial instrument loss&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;64&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1210"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(279&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1212"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--InterestIncomeExpenseNetAndDeferredCostOfFinancing_pn3n3_zCyfhwPssEu" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Interest expense, net and deferred cost of financing:&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(3,520&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(1,350&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(6,543&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(2,681&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</TGLS:ScheduleOfInterestIncomeExpenseNetAndDeferredCostTableTextBlock>
    <us-gaap:InterestExpense
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001199"
      unitRef="USD">-3429000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001200"
      unitRef="USD">-1078000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001201"
      unitRef="USD">-5957000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001202"
      unitRef="USD">-2126000</us-gaap:InterestExpense>
    <TGLS:DeferredCostsOfFinancing
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001204"
      unitRef="USD">-155000</TGLS:DeferredCostsOfFinancing>
    <TGLS:DeferredCostsOfFinancing
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001205"
      unitRef="USD">-272000</TGLS:DeferredCostsOfFinancing>
    <TGLS:DeferredCostsOfFinancing
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001206"
      unitRef="USD">-307000</TGLS:DeferredCostsOfFinancing>
    <TGLS:DeferredCostsOfFinancing
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001207"
      unitRef="USD">-555000</TGLS:DeferredCostsOfFinancing>
    <TGLS:DerivativeFinancialInstrumentGain
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001209"
      unitRef="USD">64000</TGLS:DerivativeFinancialInstrumentGain>
    <TGLS:DerivativeFinancialInstrumentGain
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001211"
      unitRef="USD">-279000</TGLS:DerivativeFinancialInstrumentGain>
    <TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001214"
      unitRef="USD">-3520000</TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing>
    <TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001215"
      unitRef="USD">-1350000</TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing>
    <TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001216"
      unitRef="USD">-6543000</TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing>
    <TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001217"
      unitRef="USD">-2681000</TGLS:InterestIncomeExpenseNetAndDeferredCostOfFinancing>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001219">&lt;p id="xdx_89B_eus-gaap--ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_zzUeOdw9MFh3" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Maturities
of long-term debt and other current borrowings as of June 30, 2026, are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B6_zsvW6Jt2HlAf" style="display: none"&gt;Schedule
of Maturities of Long Term Debt&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_493_20260630_zXarcZsz5imh" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_iI_pn3n3_maLTDz5iw_z6Anyjgfa8O5" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;6,156&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_iI_pn3n3_maLTDz5iw_z4XZ9VHLuvvj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;953&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_iI_pn3n3_maLTDz5iw_zpE5uMoL9Eel" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center"&gt;2028&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;848&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_iI_pn3n3_maLTDz5iw_zHpXBDOYxhJe" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center"&gt;2029&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;769&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_iI_pn3n3_maLTDz5iw_zyZ6FV50IIZh" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: center; padding-bottom: 1pt"&gt;2030&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;219,439&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--LongTermDebt_iTI_pn3n3_mtLTDz5iw_zEgtsOiRKiQd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: center; padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; font-weight: bold; text-align: right"&gt;228,165&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001221"
      unitRef="USD">6156000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001223"
      unitRef="USD">953000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001225"
      unitRef="USD">848000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001227"
      unitRef="USD">769000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001229"
      unitRef="USD">219439000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebt
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001231"
      unitRef="USD">228165000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentMaturityDateDescription contextRef="From2026-01-01to2026-06-30" id="Fact001233">several weeks to 5 years</us-gaap:DebtInstrumentMaturityDateDescription>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact001235"
      unitRef="Pure">0.0514</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001237"
      unitRef="USD">3905000</us-gaap:FinanceLeaseRightOfUseAsset>
    <TGLS:FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001239"
      unitRef="USD">3941000</TGLS:FinanceLeaseRightOfUseAssetIncludedPropertyPlantAndEquipmentAndLeaseLiabilities>
    <TGLS:FinanceLeaseShortTermDebt
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001241"
      unitRef="USD">932000</TGLS:FinanceLeaseShortTermDebt>
    <TGLS:FinanceLeaseLongTermDebt
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001243"
      unitRef="USD">3009000</TGLS:FinanceLeaseLongTermDebt>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001245"
      unitRef="USD">306000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001247"
      unitRef="USD">564000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001249"
      unitRef="USD">43000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001251"
      unitRef="USD">68000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001253"
      unitRef="USD">702000</us-gaap:FinanceLeasePrincipalPayments>
    <TGLS:FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001255"
      unitRef="USD">68000</TGLS:FinanceLeasePrincipalPaymentsClassifiedAsOperatingCashFlows>
    <TGLS:FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001257"
      unitRef="USD">634000</TGLS:FinanceLeasePrincipalPaymentsClassifiedAsFinancingCashFlows>
    <TGLS:NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001259"
      unitRef="USD">3073000</TGLS:NoncashAdditionsToRightOfUseAssetsInExchangeForLeaseLiabilities>
    <us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001261">&lt;p id="xdx_899_eus-gaap--FinanceLeaseLiabilityMaturityTableTextBlock_z7a8ivTHQip" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Future
minimum lease payments for the years ended June 30, of each year are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_zKECQKN054Oh" style="display: none"&gt;Schedule of Future Minimum Lease Payments&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_49B_20260630_zQQZ7DEYBikh" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_iI_pn3n3_zWBhkFopt9g2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left"&gt;2026&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;1,078&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearTwo_iI_pn3n3_zhrEp3LZ9gv7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,060&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearThree_iI_pn3n3_z6tmBx8N7AVj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;2028&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;917&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--FinanceLeaseLiabilityPaymentsDueYearFour_iI_pn3n3_z3Gl9HXjabKl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;2029&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;804&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_ecustom--FinanceLeaseLiabilityPaymentsDueAfterYearFour_iI_pn3n3_zjJajX02UxC9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;2030 and thereafter&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;446&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--FinanceLeaseLiabilityPaymentsDue_iTI_pn3n3_z4SBllCmOa59" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Total undiscounted cashflows&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4,304&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--FinanceLeaseLiabilityUndiscountedExcessAmount_iI_pn3n3_z2VnQPwvzcpa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Less: Imputed Interest&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;363&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--FinanceLeaseLiability_iTI_pn3n3_zcb1X4lTuAq3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Present value of lease liability&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,941&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001263"
      unitRef="USD">1078000</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001265"
      unitRef="USD">1060000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001267"
      unitRef="USD">917000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001269"
      unitRef="USD">804000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour>
    <TGLS:FinanceLeaseLiabilityPaymentsDueAfterYearFour
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001271"
      unitRef="USD">446000</TGLS:FinanceLeaseLiabilityPaymentsDueAfterYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001273"
      unitRef="USD">4304000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001275"
      unitRef="USD">363000</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiability
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001277"
      unitRef="USD">3941000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1 contextRef="AsOf2026-06-30" id="Fact001279">P4Y1M6D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="AsOf2026-06-30"
      decimals="INF"
      id="Fact001281"
      unitRef="Pure">0.042</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001283">&lt;p id="xdx_800_eus-gaap--DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_zjoBOi5NM3k4" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
9. &lt;span id="xdx_823_zIn8aovPMp7d"&gt;Derivative Financial Instruments and Fair Value Measurements&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Derivative
Financial Instruments&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the quarter ended June 30, 2022, we entered into several interest rate swap contracts to hedge the interest rate fluctuations related
to our outstanding debt. The effective date of the contract is December 31, 2022 and, as a result, the Company has payment dates each
quarter, commencing June 30 2023. During the quarter ended December 31, 2024, we entered into several foreign currency non-delivery option
contracts to hedge the fluctuations in the exchange rate between the Colombian Peso and the U.S. Dollar. Our contracts are designated
as cash flow hedges since they are highly effective in offsetting changes in the cash flows attributable to forecasted LIBOR and Colombian
Peso denominated costs and expenses, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;We
record our hedge contracts at fair value and consider our credit risk for contracts in a liability position, and our counter-party&#x2019;s
credit risk for contracts in an asset position, in determining fair value. We assess our counter-party&#x2019;s risk of non-performance
when measuring the fair value of financial instruments in an asset position by evaluating their financial position, including cash on
hand, as well as their credit ratings.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Due
to the Libor discontinuation, on June 21, 2023, the Company amended the Interest Rate Swap contract from Libor 1 Month plus spread to
SOFR 3 Months plus spread. The settlements of the instruments remain under the existing conditions; however, the fixed leg goes from
&lt;span id="xdx_904_eus-gaap--DerivativeFixedInterestRate_iI_dp_uPure_c20230621__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember__srt--RangeAxis__srt--MaximumMember_zAdjXAhK6t49" title="Derivative fixed interest rate"&gt;1.93&lt;/span&gt;% to &lt;span id="xdx_905_eus-gaap--DerivativeFixedInterestRate_iI_dp_uPure_c20230621__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember__srt--RangeAxis__srt--MinimumMember_zh3LyJZarQnl" title="Derivative fixed interest rate"&gt;1.87&lt;/span&gt;%. Regarding the conditions of our outstanding debt, only Libor was replaced by SOFR, maintaining the other initial conditions.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
September 04, 2025 Tecnoglass amended its senior secured revolving credit facility to (i) increase the borrowing capacity under its committed
Line of credit from $&lt;span id="xdx_900_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250903__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zYO5fWSfc3Pk" title="Line of credit"&gt;150&lt;/span&gt; million to $&lt;span id="xdx_906_eus-gaap--LineOfCreditFacilityMaximumBorrowingCapacity_iI_pn6n6_c20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_zq1pqq15OyI3" title="Line of credit facility, maximum borrowing capacity"&gt;500&lt;/span&gt; million, (ii) reduce its borrowing costs by an approximate 25 basis points, and (iii) &lt;span id="xdx_901_eus-gaap--DebtInstrumentMaturityDateDescription_c20250904__20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_z2Mw5b2IDxoe" title="Loan maturity period description"&gt;extend
the initial maturity date by five years to the end of 2030&lt;/span&gt;. Borrowings under the credit facility will now bear interest at the Secured
Overnight Financing Rate (SOFR) with no floor plus a spread of &lt;span id="xdx_90A_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20250904__20250904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember__us-gaap--DebtInstrumentAxis__us-gaap--SecuredOvernightFinancingRateSofrMember_z8492OoiUzH8" title="Debt instrument basis spread on variable rate"&gt;1.25&lt;/span&gt;%, based on the Company&#x2019;s net leverage ratio, compared to a
prior spread of &lt;span id="xdx_905_eus-gaap--DebtInstrumentBasisSpreadOnVariableRate1_pid_dp_uPure_c20240904__20240904__us-gaap--CreditFacilityAxis__custom--SeniorSecuredCreditFacilityMember_za5Y1yTQOOI5" title="Debt instrument basis spread on variable rate"&gt;1.50&lt;/span&gt;%. The facility was led by Wells Fargo Bank N.A. as Administrative Agent; with BMO Bank N.A, Citibank N.A, Citizens
Bank N.A, First Citizens Bank &amp;amp; Trust Company and J.P. Morgan Chase Bank N.A, as Joint Lead Arrangers.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30, 2026, the fair value of the Company&#x2019;s interest rate swap and foreign currency non-delivery option contracts was in
a net asset position of $&lt;span id="xdx_904_eus-gaap--DerivativeAssets_iI_pn5n6_c20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zeKSC7Zhkyn3" title="Derivative assets"&gt;1.0&lt;/span&gt; million. We had 2 outstanding interest rate swap contracts of $&lt;span id="xdx_909_eus-gaap--InterestEarningAssetsAverageAmountOutstanding_pn6n6_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zMxXpOoSopJk" title="Interest earning assets average outstanding"&gt;110&lt;/span&gt; million through November 2026 as an economic
hedge and 8 non-delivery option contracts to exchange $&lt;span id="xdx_901_eus-gaap--LongTermDebtAverageAmountOutstanding_pn6n6_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_zaDUzMrl2mp2" title="Debt outstanding amount"&gt;60&lt;/span&gt; million U.S. Dollars to Colombian Pesos through December 2026.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
the second quarter of 2026, the Company did not assess the effectiveness of foreign currency non-delivery option contracts due to the
contracts the Company entered into on May 5, 2026 which did not qualify for hedge accounting and were not designated as hedging instruments.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Because
of the discontinuation of the hedge accounting for the interest rate swap in the third quarter of 2025, the Company did not assess the
effectiveness of this instrument.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
gain or loss on the Company&#x2019;s foreign currency non-delivery option contracts are reported as a component of the earnings. The change
in the fair value of the interest rate swap designated as an economic hedge will be included in earnings at the moment of its valuation.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30,2026, there are no gains or losses, net, recognized in the &#x201c;accumulated other comprehensive income&#x201d; for non-delivery
option and interest rate swap contracts.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89C_ecustom--ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_zqUc5XMzJdkl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of interest rate swap and foreign currency non-delivery option hedges is classified in the accompanying consolidated balance
sheets, as of June 30, 2026, as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B9_zNSlVFjDWRva" style="display: none"&gt;Schedule
of Fair Value of Foreign Currency Hedges&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="4" style="border-bottom: Black 1pt solid; font: bold 10pt Times New Roman, Times, Serif; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Derivative Assets&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Derivative
Liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Derivatives financial instruments&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30, 2026&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;&lt;p style="margin-top: 0; margin-bottom: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June
30, 2026&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;under&#x202f;Subtopic 815-20:&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Balance&#x202f;Sheet&#x202f;&lt;br/&gt;
 Location&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Balance&#x202f;Sheet&#x202f;&lt;br/&gt;
 Location&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Derivative instruments:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; width: 30%; text-align: left"&gt;Interest Rate Swap Contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 18%; text-align: left"&gt;Other current assets&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zaUmP6QpA11j" style="width: 11%; text-align: right" title="Total derivative assets"&gt;787&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 18%; text-align: left"&gt;Accrued liabilities&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 11%; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zlRListcWqT5" title="Total derivative liabilities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1309"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 10pt; text-align: left"&gt;foreign currency non-delivery forwards&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zVGZT5gRNRGl" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets"&gt;232&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span id="xdx_90B_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zQiA7h2b85ec" title="Total derivative liabilities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1313"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt; text-align: left"&gt;Total derivative instruments&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; text-align: left"&gt;Total derivative assets&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630_ze5nsOc59g97" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets"&gt;1,019&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; text-align: left"&gt;Total derivative liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span id="xdx_907_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630_zGiNFFfYWONk" title="Total derivative liabilities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1317"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


&lt;p id="xdx_8A5_zhG2HZ4okShb" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
ending accumulated balance for foreign currency non-delivery option contracts included in earnings, net of tax, was $&lt;span id="xdx_905_eus-gaap--AccumulatedOtherComprehensiveIncomeLossNetOfTax_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__us-gaap--InterestRateSwapMember_z4WLmCdHIcP4" title="Accumulated other comprehensive income net of tax"&gt;232&lt;/span&gt; as of June 30,2026,
comprised of a derivative gain of $&lt;span id="xdx_904_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember_zhfdOFuVIr51" title="Accumulated other comprehensive income net of tax"&gt;232&lt;/span&gt;. No deferred income tax was calculated because the amounts accrued as of June 30, 2026 are the
same as the compensation received.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;



&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_890_eus-gaap--ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_zCFaUDcykf2h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table presents the gains (losses) on derivative financial instruments, and their classifications within the accompanying consolidated
financial statements, for the three months ended June 30, 2026, and 2025:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&#160;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zdzfpWTf99e9" style="display: none"&gt;Schedule
of Gains (Losses) on Derivative Financial Instruments quarter ended&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives in Cash Flow Hedging Relationships&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Amount of Gain or (Loss)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Location of Gain or (Loss) Reclassified from Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Amount of Gain or (Loss) Reclassified from&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Recognized in earnings on&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;OCI (Loss) into&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Income&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;OCI (Loss) into Income&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 30%; text-align: left"&gt;Interest Rate Swap and foreign currency non-delivery forwards Contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zP5nOAyQKBzd" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;1,808&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zlBcyxfrqqY2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;748&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 20%; text-align: center"&gt;Interest income (expense), net and deferred cost of financing and operating revenues &lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zzGtsYyOiKU2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1329"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zsyc1vE020Hh" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;1,250&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives in Cash Flow Hedging Relationships&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Amount of Gain or (Loss)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Location of Gain or (Loss) Reclassified from Accumulated&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Amount of Gain or (Loss)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Reclassified from&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Recognized in earnings on&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;OCI (Loss) into&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Income&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;OCI (Loss) into Income&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 30%; text-align: left"&gt;Interest Rate Swap and foreign currency non-delivery forwards Contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z9lP0eoyU03d" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;2,782&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z2iOOdpiIIUg" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;148&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 20%; text-align: center"&gt;Interest income (expense), net and deferred cost of financing and operating revenues&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zfi2A4MgNjqc" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1337"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_z58G94oUeftf" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;2,242&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_8AF_zeyUb670GaGd" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Fair
Value Measurements&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company accounts for financial assets and liabilities in accordance with accounting standards that define fair value and establish a
framework for measuring fair value. The hierarchy prioritizes the inputs into three broad levels. Level 1 inputs are quoted prices (unadjusted)
in active markets for identical assets or liabilities. Level 2 inputs are quoted prices for similar assets and liabilities in active
markets or inputs that are observable for the asset or liability, either directly or indirectly through market corroboration, for substantially
the full term of the financial instrument. Level 3 inputs are unobservable inputs based on the Company&#x2019;s assumptions used to measure
assets and liabilities at fair value. A financial asset&#x2019;s or liability&#x2019;s classification within the hierarchy is determined
based on the lowest level input that is significant to the fair value measurement.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
carrying amounts of the Company&#x2019;s financial instruments, including cash and cash equivalents, accounts receivable, accounts payable
and advances from customers approximate their fair value due to their relatively short-term maturities. The Company bases its fair value
estimate for long term debt obligations on its internal valuation that all debt is floating rate debt based on current interest rates
in Colombia.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair values of derivatives used to manage interest rate risks are based on SOFR rates and interest rate swap curves. Measurement of our
derivative assets and liabilities is considered a level 2 measurement. To carry out the swap valuation, the definition of the fixed leg
(obligation) and variable leg (right) is used. Once the projected flows are obtained in both fixed and variable rates, the regression
analysis is performed for prospective effectiveness test. The projection curve contains the forward interest rates to project flows at
a variable rate and the discount curve contains the interest rates to discount future flows, using the one-month USD Libor curve.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30, 2026, financial instruments carried at amortized cost that do not approximate fair value consist of long-term debt. See Note
8 &#x2013; Debt. The fair value of long-term debt was calculated based on an analysis of future cash flows discounted at current market
rates (which are level 2 inputs).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_894_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zLrtg6dUrum5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the fair value and carrying amounts of our long-term debt:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zEKGSrwYzX1f" style="display: none"&gt;Schedule
of Fair Value and Carrying Amounts of Long Term Debt&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20260630_z37RJ0XB0yz7" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2026&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20251231_z9Xw1wFjWFgc" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2025&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--LongTermDebtFairValue_iI_pn3n3_zKa13dL4QzEk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Fair Value&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;215,180&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;170,727&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zSzgwgew1Z2j" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Carrying Value&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;219,238&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;171,202&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A6_zfW7fP3y4hc8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MaximumMember"
      decimals="INF"
      id="Fact001285"
      unitRef="Pure">0.0193</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:DerivativeFixedInterestRate
      contextRef="AsOf2023-06-21_us-gaap_InterestRateSwapMember_srt_MinimumMember"
      decimals="INF"
      id="Fact001287"
      unitRef="Pure">0.0187</us-gaap:DerivativeFixedInterestRate>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2025-09-03_custom_SeniorSecuredCreditFacilityMember"
      decimals="-6"
      id="Fact001289"
      unitRef="USD">150000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="AsOf2025-09-04_custom_SeniorSecuredCreditFacilityMember"
      decimals="-6"
      id="Fact001291"
      unitRef="USD">500000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentMaturityDateDescription
      contextRef="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember"
      id="Fact001293">extend
the initial maturity date by five years to the end of 2030</us-gaap:DebtInstrumentMaturityDateDescription>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="From2025-09-042025-09-04_custom_SeniorSecuredCreditFacilityMember_us-gaap_SecuredOvernightFinancingRateSofrMember"
      decimals="INF"
      id="Fact001295"
      unitRef="Pure">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="From2024-09-042024-09-04_custom_SeniorSecuredCreditFacilityMember"
      decimals="INF"
      id="Fact001297"
      unitRef="Pure">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DerivativeAssets
      contextRef="AsOf2026-06-30_us-gaap_InterestRateSwapMember"
      decimals="-5"
      id="Fact001299"
      unitRef="USD">1000000.0</us-gaap:DerivativeAssets>
    <us-gaap:InterestEarningAssetsAverageAmountOutstanding
      contextRef="From2026-01-012026-06-30_us-gaap_InterestRateSwapMember"
      decimals="-6"
      id="Fact001301"
      unitRef="USD">110000000</us-gaap:InterestEarningAssetsAverageAmountOutstanding>
    <us-gaap:LongTermDebtAverageAmountOutstanding
      contextRef="From2026-01-012026-06-30_us-gaap_InterestRateSwapMember"
      decimals="-6"
      id="Fact001303"
      unitRef="USD">60000000</us-gaap:LongTermDebtAverageAmountOutstanding>
    <TGLS:ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001305">&lt;p id="xdx_89C_ecustom--ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock_zqUc5XMzJdkl" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of interest rate swap and foreign currency non-delivery option hedges is classified in the accompanying consolidated balance
sheets, as of June 30, 2026, as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B9_zNSlVFjDWRva" style="display: none"&gt;Schedule
of Fair Value of Foreign Currency Hedges&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify"&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="4" style="border-bottom: Black 1pt solid; font: bold 10pt Times New Roman, Times, Serif; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Derivative Assets&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Derivative
Liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Derivatives financial instruments&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30, 2026&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="4" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;&lt;p style="margin-top: 0; margin-bottom: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June
30, 2026&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;under&#x202f;Subtopic 815-20:&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Balance&#x202f;Sheet&#x202f;&lt;br/&gt;
 Location&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Balance&#x202f;Sheet&#x202f;&lt;br/&gt;
 Location&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Derivative instruments:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; width: 30%; text-align: left"&gt;Interest Rate Swap Contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 18%; text-align: left"&gt;Other current assets&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zaUmP6QpA11j" style="width: 11%; text-align: right" title="Total derivative assets"&gt;787&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 18%; text-align: left"&gt;Accrued liabilities&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 11%; text-align: right"&gt;&lt;span id="xdx_90E_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zlRListcWqT5" title="Total derivative liabilities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1309"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 10pt; text-align: left"&gt;foreign currency non-delivery forwards&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__custom--OtherCurrentAssetMember_zVGZT5gRNRGl" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets"&gt;232&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span id="xdx_90B_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--ForeignCurrencyNonDeliveryForwardsMember__custom--StatementOfBalanceSheetLocationAxis__us-gaap--AccruedLiabilitiesMember_zQiA7h2b85ec" title="Total derivative liabilities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1313"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt; padding-left: 20pt; text-align: left"&gt;Total derivative instruments&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; text-align: left"&gt;Total derivative assets&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--DerivativeInstrumentsAndHedges_iI_pn3n3_c20260630_ze5nsOc59g97" style="border-bottom: Black 1pt solid; text-align: right" title="Total derivative assets"&gt;1,019&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-left: Black 1pt solid; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt; text-align: left"&gt;Total derivative liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span id="xdx_907_eus-gaap--DerivativeInstrumentsAndHedgesLiabilities_iI_pn3n3_c20260630_zGiNFFfYWONk" title="Total derivative liabilities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1317"&gt;-&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


</TGLS:ScheduleOfFairValueOfForeignCurrencyHedgesTableTextBlock>
    <us-gaap:DerivativeInstrumentsAndHedges
      contextRef="AsOf2026-06-30_custom_InterestRateSwapContractsMember_custom_OtherCurrentAssetMember"
      decimals="-3"
      id="Fact001307"
      unitRef="USD">787000</us-gaap:DerivativeInstrumentsAndHedges>
    <us-gaap:DerivativeInstrumentsAndHedges
      contextRef="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember_custom_OtherCurrentAssetMember"
      decimals="-3"
      id="Fact001311"
      unitRef="USD">232000</us-gaap:DerivativeInstrumentsAndHedges>
    <us-gaap:DerivativeInstrumentsAndHedges
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001315"
      unitRef="USD">1019000</us-gaap:DerivativeInstrumentsAndHedges>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="AsOf2026-06-30_us-gaap_InterestRateSwapMember"
      decimals="-3"
      id="Fact001319"
      unitRef="USD">232000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:DerivativeInstrumentsAndHedges
      contextRef="AsOf2026-06-30_custom_ForeignCurrencyNonDeliveryForwardsMember"
      decimals="-3"
      id="Fact001321"
      unitRef="USD">232000</us-gaap:DerivativeInstrumentsAndHedges>
    <us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001323">&lt;p id="xdx_890_eus-gaap--ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_zCFaUDcykf2h" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table presents the gains (losses) on derivative financial instruments, and their classifications within the accompanying consolidated
financial statements, for the three months ended June 30, 2026, and 2025:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; background-color: white"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&#160;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zdzfpWTf99e9" style="display: none"&gt;Schedule
of Gains (Losses) on Derivative Financial Instruments quarter ended&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives in Cash Flow Hedging Relationships&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Amount of Gain or (Loss)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Location of Gain or (Loss) Reclassified from Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Amount of Gain or (Loss) Reclassified from&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Recognized in earnings on&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;OCI (Loss) into&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Income&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;OCI (Loss) into Income&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Three Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 30%; text-align: left"&gt;Interest Rate Swap and foreign currency non-delivery forwards Contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zP5nOAyQKBzd" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;1,808&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_zlBcyxfrqqY2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;748&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 20%; text-align: center"&gt;Interest income (expense), net and deferred cost of financing and operating revenues &lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zzGtsYyOiKU2" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1329"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250401__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zsyc1vE020Hh" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;1,250&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="16" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives in Cash Flow Hedging Relationships&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Amount of Gain or (Loss)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Location of Gain or (Loss) Reclassified from Accumulated&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Amount of Gain or (Loss)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Reclassified from&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Recognized in earnings on&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;OCI (Loss) into&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Derivatives&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Income&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;OCI (Loss) into Income&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;Six Months Ended&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="padding-bottom: 1pt; font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 30%; text-align: left"&gt;Interest Rate Swap and foreign currency non-delivery forwards Contracts&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260101__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z9lP0eoyU03d" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;2,782&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember_z2iOOdpiIIUg" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;148&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 20%; text-align: center"&gt;Interest income (expense), net and deferred cost of financing and operating revenues&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20260401__20260630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_zfi2A4MgNjqc" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1337"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_ecustom--DerivativeGainLossesOnDerivativeNet_pn3n3_c20250101__20250630__us-gaap--DerivativeInstrumentRiskAxis__custom--InterestExpenseNetOfDeferredCostOfFinancingMember_z58G94oUeftf" style="width: 8%; text-align: right" title="Amount of Gain or (Loss) Recognized in OCI (Loss) on Derivatives"&gt;2,242&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 0pt 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2026-04-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember"
      decimals="-3"
      id="Fact001325"
      unitRef="USD">1808000</TGLS:DerivativeGainLossesOnDerivativeNet>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2025-04-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember"
      decimals="-3"
      id="Fact001327"
      unitRef="USD">748000</TGLS:DerivativeGainLossesOnDerivativeNet>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2025-04-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember"
      decimals="-3"
      id="Fact001331"
      unitRef="USD">1250000</TGLS:DerivativeGainLossesOnDerivativeNet>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2026-01-012026-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember"
      decimals="-3"
      id="Fact001333"
      unitRef="USD">2782000</TGLS:DerivativeGainLossesOnDerivativeNet>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2025-01-012025-06-30_custom_InterestRateSwapContractsAndForeignCurrencyNonDeliveryForwardsMember"
      decimals="-3"
      id="Fact001335"
      unitRef="USD">148000</TGLS:DerivativeGainLossesOnDerivativeNet>
    <TGLS:DerivativeGainLossesOnDerivativeNet
      contextRef="From2025-01-012025-06-30_custom_InterestExpenseNetOfDeferredCostOfFinancingMember"
      decimals="-3"
      id="Fact001339"
      unitRef="USD">2242000</TGLS:DerivativeGainLossesOnDerivativeNet>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001341">&lt;p id="xdx_894_eus-gaap--ScheduleOfDebtInstrumentsTextBlock_zLrtg6dUrum5" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the fair value and carrying amounts of our long-term debt:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zEKGSrwYzX1f" style="display: none"&gt;Schedule
of Fair Value and Carrying Amounts of Long Term Debt&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20260630_z37RJ0XB0yz7" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2026&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49A_20251231_z9Xw1wFjWFgc" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;2025&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--LongTermDebtFairValue_iI_pn3n3_zKa13dL4QzEk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Fair Value&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;215,180&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;170,727&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--LongTermDebtNoncurrent_iI_pn3n3_zSzgwgew1Z2j" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Carrying Value&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;219,238&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;171,202&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:LongTermDebtFairValue
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001343"
      unitRef="USD">215180000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtFairValue
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001344"
      unitRef="USD">170727000</us-gaap:LongTermDebtFairValue>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001346"
      unitRef="USD">219238000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="AsOf2025-12-31"
      decimals="-3"
      id="Fact001347"
      unitRef="USD">171202000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001349">&lt;p id="xdx_809_eus-gaap--IncomeTaxDisclosureTextBlock_z7g8eZ1xcPCh" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
10.&lt;span id="xdx_824_zlKstDgsSy45"&gt; Income Taxes&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company files income tax returns for TG, ES and ES Metals in the Republic of Colombia. GM&amp;amp;P, Componenti and ESW LLC are U.S. entities
based in Florida subject to U.S. federal and state income taxes. Tecnoglass as well as the Company&#x2019;s other subsidiaries in the
Cayman Islands do not currently have any tax obligations.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
July 7, 2026, the Company completed its continuation from the Cayman Islands to the State of Florida and changed its jurisdiction of
incorporation from the Cayman Islands to Florida. In connection with the continuation, the Company became governed by the Florida Business
Corporation Act and its Florida Articles of Incorporation and Bylaws. Each outstanding ordinary share of the Company automatically became
a share of common stock of the Florida corporation with the same par value, and the Company&#x2019;s common stock continues to be listed
and traded on the New York Stock Exchange under the symbol &#x201c;TGLS.&#x201d;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;



&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
a result of the redomiciliation, the Company will be subject to U.S. federal income taxation. The Company&#x2019;s foreign subsidiaries
will be treated as controlled foreign corporations for U.S. tax purposes, and certain income of those entities will be included in the
U.S. tax computation. Management believes that the effective foreign tax rates applicable to such income are sufficient to generate foreign
tax credits that substantially offset any incremental U.S. federal income tax liability. Accordingly, management does not expect the
redomiciliation to have a material impact on the Company&#x2019;s income tax provision.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_892_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z7mUdjs4Lt8j" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of income tax expense are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B8_z4gM7pD2HG9d" style="display: none"&gt;Schedule
of Components of Income Tax Expense&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20260401__20260630_zEspyM4OFgX5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20250401__20250630_zLkuv8gz2VK1" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49D_20260101__20260630_zlxANL5NSlpj" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20250101__20250630_zeNqz8ppTE7e" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Three months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Six months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Current income tax&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_z41yymLJPOi3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;United States&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(7,327&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(8,286&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(14,417&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(11,920&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zmVsqKoi08Lj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Colombia&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(1,208&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(10,329&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(6,571&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(21,881&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--PA_z9I4b4oXbmX" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Panama&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1363"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(1&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1365"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_zNPEy9wDym1i" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total current income tax&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(8,535&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(18,616&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(20,988&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(33,806&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Deferred income Tax&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_zJ05AKjQ8ys4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;United States&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3,130&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;58&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(994&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(1,355&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zWiToKdm44O2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Colombia&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,430&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;410&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(4,015&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(647&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_zq8YfYmmsED7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total deferred income tax&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,560&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;468&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,009&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,002&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--IncomeTaxExpenseBenefit_iN_pn3n3_di_z3SFonrzfKo7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Total income provision&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(14,095&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(18,148&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(25,997&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(35,808&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateContinuingOperations_pid_dp_uPure_zHwyudi7p41" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Effective tax rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;36.5&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;29.2&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31.5&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;29.3&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A3_zxQiN51ewlXj" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
effective income tax rate for the three and six months ended June 30, 2026, of &lt;span id="xdx_90C_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20260401__20260630_zNrsDDmHpTae" title="Statutory income tax rate"&gt;36.5&lt;/span&gt;%, and &lt;span id="xdx_90F_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20260101__20260630_zFVLpmBJcEt8" title="Statutory income tax rate"&gt;31.5&lt;/span&gt;%, respectively, reflects he impact of certain foreign expenses incurred by the Company&#x2019;s Colombian subsidiaries that are not deductible for income tax purposes. The effective
income tax rate for the three and six months ended June 30, 2025, of &lt;span id="xdx_902_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20250401__20250630_zIVKmb6x7tKh" title="Statutory income tax rate"&gt;29.2&lt;/span&gt;%, and &lt;span id="xdx_908_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_pid_dp_uPure_c20250101__20250630_znjxNbhqQ9pj" title="Statutory income tax rate"&gt;29.3&lt;/span&gt;%, respectively, approximates the weighted average
statutory rate of &lt;span id="xdx_90E_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_pid_dp_uPure_c20260101__20260630_zXkuRpcuRE76" title="Weighted average statutory rate"&gt;29.1&lt;/span&gt;%.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001351">&lt;p id="xdx_892_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_z7mUdjs4Lt8j" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of income tax expense are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B8_z4gM7pD2HG9d" style="display: none"&gt;Schedule
of Components of Income Tax Expense&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20260401__20260630_zEspyM4OFgX5" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20250401__20250630_zLkuv8gz2VK1" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49D_20260101__20260630_zlxANL5NSlpj" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20250101__20250630_zeNqz8ppTE7e" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Three months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Six months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Current income tax&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_z41yymLJPOi3" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;United States&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(7,327&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(8,286&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(14,417&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;(11,920&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zmVsqKoi08Lj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Colombia&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(1,208&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(10,329&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(6,571&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(21,881&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--PA_z9I4b4oXbmX" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Panama&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1363"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(1&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1365"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--CurrentIncomeTaxExpenseBenefit_iN_pn3n3_di_zNPEy9wDym1i" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total current income tax&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(8,535&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(18,616&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(20,988&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(33,806&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Deferred income Tax&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--US_zJ05AKjQ8ys4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;United States&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3,130&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;58&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(994&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(1,355&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_hsrt--StatementGeographicalAxis__country--CO_zWiToKdm44O2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Colombia&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,430&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;410&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(4,015&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(647&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--DeferredIncomeTaxExpenseBenefit_iN_pn3n3_di_zq8YfYmmsED7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Total deferred income tax&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,560&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;468&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(5,009&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,002&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--IncomeTaxExpenseBenefit_iN_pn3n3_di_z3SFonrzfKo7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Total income provision&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(14,095&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(18,148&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(25,997&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(35,808&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateContinuingOperations_pid_dp_uPure_zHwyudi7p41" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Effective tax rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;36.5&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;29.2&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31.5&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;29.3&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30_country_US"
      decimals="-3"
      id="Fact001353"
      unitRef="USD">7327000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30_country_US"
      decimals="-3"
      id="Fact001354"
      unitRef="USD">8286000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-01-012026-06-30_country_US"
      decimals="-3"
      id="Fact001355"
      unitRef="USD">14417000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30_country_US"
      decimals="-3"
      id="Fact001356"
      unitRef="USD">11920000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30_country_CO"
      decimals="-3"
      id="Fact001358"
      unitRef="USD">1208000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30_country_CO"
      decimals="-3"
      id="Fact001359"
      unitRef="USD">10329000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-01-012026-06-30_country_CO"
      decimals="-3"
      id="Fact001360"
      unitRef="USD">6571000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30_country_CO"
      decimals="-3"
      id="Fact001361"
      unitRef="USD">21881000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30_country_PA"
      decimals="-3"
      id="Fact001364"
      unitRef="USD">1000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30_country_PA"
      decimals="-3"
      id="Fact001366"
      unitRef="USD">5000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001368"
      unitRef="USD">8535000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001369"
      unitRef="USD">18616000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001370"
      unitRef="USD">20988000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001371"
      unitRef="USD">33806000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30_country_US"
      decimals="-3"
      id="Fact001373"
      unitRef="USD">3130000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30_country_US"
      decimals="-3"
      id="Fact001374"
      unitRef="USD">-58000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2026-01-012026-06-30_country_US"
      decimals="-3"
      id="Fact001375"
      unitRef="USD">994000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30_country_US"
      decimals="-3"
      id="Fact001376"
      unitRef="USD">1355000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30_country_CO"
      decimals="-3"
      id="Fact001378"
      unitRef="USD">2430000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30_country_CO"
      decimals="-3"
      id="Fact001379"
      unitRef="USD">-410000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2026-01-012026-06-30_country_CO"
      decimals="-3"
      id="Fact001380"
      unitRef="USD">4015000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30_country_CO"
      decimals="-3"
      id="Fact001381"
      unitRef="USD">647000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001383"
      unitRef="USD">5560000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001384"
      unitRef="USD">-468000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001385"
      unitRef="USD">5009000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001386"
      unitRef="USD">2002000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001388"
      unitRef="USD">14095000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001389"
      unitRef="USD">18148000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001390"
      unitRef="USD">25997000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001391"
      unitRef="USD">35808000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact001393"
      unitRef="Pure">0.365</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact001394"
      unitRef="Pure">0.292</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact001395"
      unitRef="Pure">0.315</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact001396"
      unitRef="Pure">0.293</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact001398"
      unitRef="Pure">0.365</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact001400"
      unitRef="Pure">0.315</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact001402"
      unitRef="Pure">0.292</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact001404"
      unitRef="Pure">0.293</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact001406"
      unitRef="Pure">0.291</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001408">&lt;p id="xdx_80C_eus-gaap--RelatedPartyTransactionsDisclosureTextBlock_zA6cmrWfO5mf" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
11. &lt;span id="xdx_82F_zSnu9k5eAumc"&gt;Related Parties&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_899_eus-gaap--ScheduleOfRelatedPartyTransactionsTableTextBlock_zzJMawkfBaF9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following is a summary of assets, liabilities, and income transactions with all related parties:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_zQnTCPBdH6id" style="display: none"&gt;Schedule of Related Parties&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20260630_zB8VoKaWW8sc" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20251231_zU10sDXTopL8" style="font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Due from related parties:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYa5dHayodYf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Alutrafic Led SAS&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;644&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;525&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z4l9SCPOkpUf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Studio Avanti SAS&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;427&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;403&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z8trKFIYDuti" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Prisma-Glass LLC&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;404&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvomiWAZGspj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Due from other related parties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;645&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;670&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zLueAwP7eWHe" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="font-weight: bold; text-align: left; padding-bottom: 1pt"&gt;Total due from related parties&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;2,075&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;2,002&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Due to related parties:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zu73D6ZhCK65" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Vidrio Andino&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,131&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,717&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zkI2AAZtLwCd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Due to other related parties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;3,764&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,164&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUe6z8kJ80Rl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; text-align: left; padding-bottom: 1pt"&gt;Total due to related parties&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;8,895&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;10,881&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A5_ztmEIa5Qclhe" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89F_ecustom--ScheduleOfSaleToRelatedPartyTableTextBlock_zCetpNutn8Ck" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zCZwS14O0JO3" style="display: none"&gt;Schedule of Sale to Related Parties&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20260401__20260630_zIx960hdwuSl" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20250401__20250630_zTQAq5li7D82" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20260101__20260630_z1LrHc7hthgf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20250101__20250630_zY4yLST7hgV7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Three months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Six months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Sales to related parties:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKAbpRw7IGM2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;Prisma Glass LLC&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;448&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;785&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;604&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;1,168&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z6AQXZpNWKX4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Alutrafic Led SAS&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;276&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;230&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;569&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;587&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYOZkxWsFxtf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Studio Avanti SAS&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;51&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;294&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;145&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;532&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--SalesToOtherRelatedPartiesMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zyzFB6Gny5H3" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Sales to other related parties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(55&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;93&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;23&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;130&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zBnTFvAnmPTi" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Sales to related parties&lt;/span&gt;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;720&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;1,401&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;1,341&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;2,417&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AF_zgb9PEKjLEGa" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;/p&gt;



&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Alutrafic
Led SAS&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
the ordinary course of business, we sell products to Alutrafic Led SAS (&#x201c;Alutrafic&#x201d;), a fabricator of electrical lighting
equipment. Affiliates of Jose Daes and Christian Daes, the Company&#x2019;s Chief Executive Officer and Chief Operating Officer, respectively,
have an ownership stake in Alutrafic. During the three and six months ended June 30, 2026, we sold $&lt;span id="xdx_903_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z7DB6J1xbn22" title="Revenue from related parties"&gt;276&lt;/span&gt;, and $&lt;span id="xdx_909_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zfejn2xz33Cb" title="Revenue from related parties"&gt;569&lt;/span&gt;, respectively, to Alutrafic,
compared to $&lt;span id="xdx_909_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z72s2jx4EcKa" title="Revenue from related parties"&gt;230&lt;/span&gt; and $&lt;span id="xdx_903_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z67X1TCSDbYb" title="Revenue from related parties"&gt;587&lt;/span&gt; during the three and six months ended June 30, 2025, respectively. Additionally, we had outstanding accounts
receivable from Alutrafic of $&lt;span id="xdx_90A_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zsXEnDaAzdnj" title="Accounts receivable"&gt;644&lt;/span&gt; and $&lt;span id="xdx_905_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvozkj8riDl9" title="Accounts receivable"&gt;525&lt;/span&gt; as of June 30, 2026, and December 31, 2025, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Fundacion
Tecnoglass-ESWindows&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Fundacion
Tecnoglass-ESWindows is a non-for-profit entity set up by the Company to carry out social causes in the communities around where we operate.
We made charitable contributions during the three and six months ended June 30, 2026 of $&lt;span id="xdx_90D_ecustom--CashContributionsForSocialCauses_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zTMcsxpYKrW" title="Cash contributions for social causes"&gt;1,242&lt;/span&gt; and $&lt;span id="xdx_902_ecustom--CashContributionsForSocialCauses_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zx8XjzSLkPO" title="Cash contributions for social causes"&gt;2,426&lt;/span&gt;, respectively, compared to
$&lt;span id="xdx_900_ecustom--CashContributionsForSocialCauses_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zAQgFkR8lJd9" title="Cash contributions for social causes"&gt;998&lt;/span&gt; and $&lt;span id="xdx_907_ecustom--CashContributionsForSocialCauses_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--FundacionTecnoglassMember_zQV18jErpGIk" title="Cash contributions for social causes"&gt;2,046&lt;/span&gt;, during the three and six months ended June 30, 2025, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Prisma-Glass
LLC&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
the ordinary course of business, we sell products to Prisma-Glass LLC, a distributer and installer of architectural systems in Florida
that is owned and controlled by family members of Christian Daes. We sold $&lt;span id="xdx_904_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUIlgur6D49j" title="Revenue from related parties"&gt;448&lt;/span&gt; and $&lt;span id="xdx_909_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zxJNB7Ou1Aak" title="Revenue from related parties"&gt;604&lt;/span&gt;, respectively, to Prisma-Glass LLC during the
three and six months ended June 30, 2026, compared to $&lt;span id="xdx_90B_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zzCM9r7DXNM4" title="Revenue from related parties"&gt;785&lt;/span&gt; and $&lt;span id="xdx_900_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zakknlS96un8" title="Revenue from related parties"&gt;1,168&lt;/span&gt;, respectively, during the three and six months ended June 30, 2025.
The Company had outstanding accounts receivable from Prisma-Glass of $&lt;span id="xdx_90D_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zEF9QEC7f12h" title="Accounts receivable"&gt;359&lt;/span&gt; and $&lt;span id="xdx_90D_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zQZiBk7cjkC3" title="Accounts receivable"&gt;404&lt;/span&gt; as of June 30, 2026, and December 31, 2025, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Santa
Maria del Mar SAS&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
the ordinary course of business, we purchase fuel for use at our manufacturing facilities from Estaci&#xf3;n Santa Maria del Mar SAS,
a gas station located in the vicinity of our manufacturing campus which is owned by affiliates of Jose Daes and Christian Daes. During
the three and six months ended June 30, 2026, we purchased $&lt;span id="xdx_901_ecustom--PurchasePriceOfFuel_pn3n3_c20260401__20260630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zOlFuRuM5QB6" title="Purchases of fuel"&gt;462&lt;/span&gt; and $&lt;span id="xdx_909_ecustom--PurchasePriceOfFuel_pn3n3_c20260101__20260630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zafW5hESOgAl" title="Purchases of fuel"&gt;846&lt;/span&gt;, respectively, compared to $&lt;span id="xdx_90D_ecustom--PurchasePriceOfFuel_pn3n3_c20250401__20250630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvjpsfxfNd9f" title="Purchases of fuel"&gt;131&lt;/span&gt; and $&lt;span id="xdx_902_ecustom--PurchasePriceOfFuel_pn3n3_c20250101__20250630__srt--TitleOfIndividualAxis__custom--CEOAndCOOMember__us-gaap--RelatedPartyTransactionAxis__custom--SantaMariaDelMarSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_znJqlWa6pEkf" title="Purchases of fuel"&gt;719&lt;/span&gt; purchased during the
three and six months ended June 30, 2025, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Storm
Armour Solutions&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
June 2025, the Company entered into a partnership with Storm Armour, LLC to create Storm Armour Solutions, LLC which has the purpose
of participating in the sale, sublicensing, and distribution of licensed products in the areas of influence, under a licensing agreement.
To join this business, Tecno Inc created a wholly owned subsidiary named Tecnoglass Armour, LLC, a Limited Liability Company based in
the State of Florida. Tecnoglass Armour, LLC has a &lt;span id="xdx_907_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20250630__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--StormArmourSolutionsLLCMember_z2w6XVuFnEmd" title="Equity method investment ownership percentage"&gt;60&lt;/span&gt;% capital contribution of Storm Armour Solutions, LLC. As of June 30, 2026, we had
an investment of $&lt;span id="xdx_90A_eus-gaap--Investments_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--StormArmourSolutionsLLCMember_z4EpDRJbXCi8" title="Investments"&gt;901&lt;/span&gt; recorded on our consolidated balance sheet.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Studio
Avanti SAS&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
the ordinary course of business, we sell products to Studio Avanti SAS (&#x201c;Avanti&#x201d;), a distributer and installer of architectural
systems in Colombia. Avanti is owned and controlled by Alberto Velilla, who is director of Energy Holding Corporation, the Company&#x2019;s
largest shareholder. As of June 30, 2026 and December 31, 2025, the Company had outstanding accounts receivable from Avanti of $&lt;span id="xdx_90C_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYTSbdUKfMe9" title="Accounts receivable"&gt;427 &lt;/span&gt;and
$&lt;span id="xdx_90E_eus-gaap--AccountsReceivableNet_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zr6TP2IyLPN8" title="Accounts receivable"&gt;403&lt;/span&gt;, respectively. During the three and six months ended June 30, 2026, we sold $&lt;span id="xdx_90C_eus-gaap--Revenues_pn3n3_c20260401__20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z5UmDfb6sKT2" title="Revenue from related parties"&gt;51&lt;/span&gt; and $&lt;span id="xdx_900_eus-gaap--Revenues_pn3n3_c20260101__20260630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z9O0CUrSKaGc" title="Revenue from related parties"&gt;145&lt;/span&gt; of products to Avanti, respectively, compared
to $&lt;span id="xdx_909_eus-gaap--Revenues_pn3n3_c20250401__20250630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zAzPXj9EYJFl" title="Revenue from related parties"&gt;294&lt;/span&gt; and $&lt;span id="xdx_904_eus-gaap--Revenues_pn3n3_c20250101__20250630__us-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKPgWZJxcAKa" title="Revenue from related parties"&gt;532&lt;/span&gt; during the three and six months ended June 30, 2025, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Vidrio
Andino Joint Venture&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
May 3, 2019, we consummated a joint venture agreement with Saint-Gobain, a world leader in the production of float glass, a key component
of our manufacturing process, whereby we acquired a &lt;span id="xdx_90C_eus-gaap--MinorityInterestOwnershipPercentageByParent_iI_pid_dp_c20190503__srt--OwnershipAxis__custom--VidrioAndinoMember_zrWL9f949cZ3" title="Minority interest ownership"&gt;25.8&lt;/span&gt;% minority ownership interest in Vidrio Andino, a Colombia-based subsidiary of
Saint-Gobain. The purchase price for our interest in Vidrio Andino was $&lt;span id="xdx_90F_eus-gaap--BusinessCombinationConsiderationTransferred1_pn6n6_c20201208__20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zpoi1Bi66WGh" title="Purchase price of interest"&gt;45&lt;/span&gt; million, of which $&lt;span id="xdx_90F_eus-gaap--PaymentsToAcquireBusinessesGross_pn5n6_c20201208__20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zIIf0zs9DYgj" title="Payment of cash"&gt;34.1&lt;/span&gt; million was paid in cash and $&lt;span id="xdx_90D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand_iI_pn5n6_c20201209__srt--OwnershipAxis__custom--VidrioAndinoMember_zOsRlSmkAeBi" title="Land contribution value"&gt;10.9
&lt;/span&gt;million paid through the contribution of land on December 9, 2020. On October 28, 2020, we acquired said land from a related party and
paid for it with the issuance of an aggregate of &lt;span id="xdx_90D_eus-gaap--StockIssuedDuringPeriodSharesAcquisitions_pid_c20201028__20201028__srt--OwnershipAxis__custom--VidrioAndinoMember_zxbzVeQwsEh3" title="Shares issued during acquisition"&gt;1,557,142&lt;/span&gt; ordinary shares of the Company, valued at $&lt;span id="xdx_901_eus-gaap--SharesIssuedPricePerShare_iI_pid_c20201028__srt--OwnershipAxis__custom--VidrioAndinoMember_zgCaXgBwgjQl" title="Shares issued, price per share"&gt;7.00&lt;/span&gt; per share, which represented
an approximate&lt;span id="xdx_904_ecustom--PremiumClosingStockPercentage_iI_pid_dp_uPure_c20201027__srt--OwnershipAxis__custom--VidrioAndinoMember_zCrxGnGZQ17b" title="Premium closing stock, percent"&gt; 33&lt;/span&gt;% premium based on the closing stock price as of October 27, 2020.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
land will serve the purpose of developing a second float glass plant nearby our existing manufacturing facilities which we expect will
carry significant efficiencies for us once it becomes operative, in which we will also have a &lt;span id="xdx_90B_ecustom--ExpectedOwnershipPercentage_pid_dp_uPure_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zwkpAYeggvJi" title="Expected ownership percentage"&gt;25.8&lt;/span&gt;% interest. The new plant will be funded
with proceeds from the original cash contribution made by the Company, operating cashflows from the Bogota plant, debt incurred at the
joint venture level that will not consolidate into the Company and an additional contribution by us of approximately $&lt;span id="xdx_907_ecustom--FutureAdditionalContributionAmount_pn5n6_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_znehCTgBXqGi" title="Additional contribution amount"&gt;12.5&lt;/span&gt; million if
needed (based on debt availability as a first option).&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 29.7pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&lt;/p&gt;



&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
the ordinary course of business, we purchased $&lt;span id="xdx_909_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20260401__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zLK1sFiPlDE1" title="Purchase from related party"&gt;9,352&lt;/span&gt; and $&lt;span id="xdx_90A_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zMIthypWg096" title="Purchase from related party"&gt;17,393&lt;/span&gt;, of materials from Vidrio Andino during the three and six months ended
June 30, 2026, respectively, compared to $&lt;span id="xdx_901_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20250401__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_z457kGMTz5B2" title="Purchase from related party"&gt;10,633&lt;/span&gt;, and $&lt;span id="xdx_900_eus-gaap--PaymentsToAcquireProductiveAssets_pn3n3_c20250101__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_z8DtIkXNl2Vd" title="Purchase from related party"&gt;19,678&lt;/span&gt;, during the three and six months ended June 30, 2025, respectively. We
also had outstanding payables to Vidrio Andino of $&lt;span id="xdx_906_eus-gaap--AccountsPayableCurrent_iI_pn3n3_c20260630__srt--OwnershipAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zGTuPID1eGc1" title="Payable outstanding"&gt;5,131&lt;/span&gt; and $&lt;span id="xdx_908_eus-gaap--AccountsPayableCurrent_iI_pn3n3_c20251231__srt--OwnershipAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zssVhNHkMOU" title="Payable outstanding"&gt;5,717&lt;/span&gt; as of June 30, 2026 and December 31, 2025, respectively. We recorded
equity method loss of $&lt;span id="xdx_908_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20260401__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zUeh8iCwVXBg" title="Equity method income"&gt;159&lt;/span&gt;, and income of $&lt;span id="xdx_909_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20260101__20260630__srt--OwnershipAxis__custom--VidrioAndinoMember_zJfix5Ywtuhi" title="Equity method income"&gt;3&lt;/span&gt;, on our Consolidated Statement of Operations during the three and six months ended June
30, 2026, respectively, compared to $&lt;span id="xdx_908_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20250401__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_zfbpMlayPLK5" title="Equity method income"&gt;941&lt;/span&gt; and $&lt;span id="xdx_90C_eus-gaap--IncomeLossFromEquityMethodInvestments_pn3n3_c20250101__20250630__srt--OwnershipAxis__custom--VidrioAndinoMember_zvr8F3XnRjBg" title="Equity method income"&gt;2,258&lt;/span&gt;, recorded during the three and six months ended June 30, 2025, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Zofracosta
SA&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;We
have an investment in Zofracosta SA, a real estate holding company located in the vicinity of the proposed glass plant being built through
our Vidrio Andino joint venture, recorded at $&lt;span id="xdx_907_eus-gaap--Investments_iI_pn3n3_c20260630__us-gaap--RelatedPartyTransactionAxis__custom--ZofracostaSAMember_z6GN0r2eRrKb" title="Investments"&gt;883&lt;/span&gt; and $&lt;span id="xdx_90F_eus-gaap--Investments_iI_pn3n3_c20251231__us-gaap--RelatedPartyTransactionAxis__custom--ZofracostaSAMember_z4R02GYrBbgh" title="Investments"&gt;810&lt;/span&gt; as of June 30, 2026 and December 31, 2025, respectively. Affiliates of Jose
Daes and Christian Daes have a majority ownership stake in Zofracosta SA.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001410">&lt;p id="xdx_899_eus-gaap--ScheduleOfRelatedPartyTransactionsTableTextBlock_zzJMawkfBaF9" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following is a summary of assets, liabilities, and income transactions with all related parties:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BD_zQnTCPBdH6id" style="display: none"&gt;Schedule of Related Parties&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20260630_zB8VoKaWW8sc" style="font-weight: bold; text-align: center"&gt;June 30,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20251231_zU10sDXTopL8" style="font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Due from related parties:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYa5dHayodYf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Alutrafic Led SAS&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;644&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;525&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z4l9SCPOkpUf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Studio Avanti SAS&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;427&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;403&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z8trKFIYDuti" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Prisma-Glass LLC&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;404&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zvomiWAZGspj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Due from other related parties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;645&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;670&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OtherReceivablesNetCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zLueAwP7eWHe" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="font-weight: bold; text-align: left; padding-bottom: 1pt"&gt;Total due from related parties&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;2,075&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;2,002&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Due to related parties:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--VidrioAndinoMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zu73D6ZhCK65" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Vidrio Andino&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,131&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,717&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--OtherMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zkI2AAZtLwCd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Due to other related parties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;3,764&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;5,164&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--OtherLiabilitiesCurrent_iI_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zUe6z8kJ80Rl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; text-align: left; padding-bottom: 1pt"&gt;Total due to related parties&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;8,895&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;10,881&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001412"
      unitRef="USD">644000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2025-12-31_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001413"
      unitRef="USD">525000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001415"
      unitRef="USD">427000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2025-12-31_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001416"
      unitRef="USD">403000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001418"
      unitRef="USD">359000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2025-12-31_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001419"
      unitRef="USD">404000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2026-06-30_custom_OtherMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001421"
      unitRef="USD">645000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2025-12-31_custom_OtherMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001422"
      unitRef="USD">670000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001424"
      unitRef="USD">2075000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001425"
      unitRef="USD">2002000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001427"
      unitRef="USD">5131000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001428"
      unitRef="USD">5717000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2026-06-30_custom_OtherMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001430"
      unitRef="USD">3764000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2025-12-31_custom_OtherMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001431"
      unitRef="USD">5164000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001433"
      unitRef="USD">8895000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="AsOf2025-12-31_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001434"
      unitRef="USD">10881000</us-gaap:OtherLiabilitiesCurrent>
    <TGLS:ScheduleOfSaleToRelatedPartyTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001436">&lt;p id="xdx_89F_ecustom--ScheduleOfSaleToRelatedPartyTableTextBlock_zCetpNutn8Ck" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zCZwS14O0JO3" style="display: none"&gt;Schedule of Sale to Related Parties&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20260401__20260630_zIx960hdwuSl" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20250401__20250630_zTQAq5li7D82" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20260101__20260630_z1LrHc7hthgf" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20250101__20250630_zY4yLST7hgV7" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Three months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Six months ended&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: center"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2026&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; font-weight: bold; text-align: center"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Sales to related parties:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--PrismaGlassLLCMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zKAbpRw7IGM2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;Prisma Glass LLC&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;448&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;785&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;604&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;1,168&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--AlutraficLedSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_z6AQXZpNWKX4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Alutrafic Led SAS&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;276&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;230&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;569&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;587&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--StudioAvantiSASMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zYOZkxWsFxtf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Studio Avanti SAS&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;51&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;294&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;145&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;532&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionAxis__custom--SalesToOtherRelatedPartiesMember__us-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zyzFB6Gny5H3" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1pt"&gt;Sales to other related parties&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(55&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;93&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;23&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;130&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--Revenues_pn3n3_hus-gaap--RelatedPartyTransactionsByRelatedPartyAxis__us-gaap--RelatedPartyMember_zBnTFvAnmPTi" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;&lt;span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Sales to related parties&lt;/span&gt;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;720&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;1,401&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;1,341&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; font-weight: bold; text-align: right"&gt;2,417&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</TGLS:ScheduleOfSaleToRelatedPartyTableTextBlock>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001438"
      unitRef="USD">448000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001439"
      unitRef="USD">785000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001440"
      unitRef="USD">604000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001441"
      unitRef="USD">1168000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001443"
      unitRef="USD">276000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001444"
      unitRef="USD">230000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001445"
      unitRef="USD">569000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001446"
      unitRef="USD">587000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001448"
      unitRef="USD">51000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001449"
      unitRef="USD">294000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001450"
      unitRef="USD">145000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001451"
      unitRef="USD">532000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001453"
      unitRef="USD">-55000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001454"
      unitRef="USD">93000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001455"
      unitRef="USD">23000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_custom_SalesToOtherRelatedPartiesMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001456"
      unitRef="USD">130000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001458"
      unitRef="USD">720000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001459"
      unitRef="USD">1401000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001460"
      unitRef="USD">1341000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001461"
      unitRef="USD">2417000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001463"
      unitRef="USD">276000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001465"
      unitRef="USD">569000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001467"
      unitRef="USD">230000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001469"
      unitRef="USD">587000</us-gaap:Revenues>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2026-06-30_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001471"
      unitRef="USD">644000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2025-12-31_custom_AlutraficLedSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001473"
      unitRef="USD">525000</us-gaap:AccountsReceivableNet>
    <TGLS:CashContributionsForSocialCauses
      contextRef="From2026-04-012026-06-30_custom_FundacionTecnoglassMember"
      decimals="-3"
      id="Fact001475"
      unitRef="USD">1242000</TGLS:CashContributionsForSocialCauses>
    <TGLS:CashContributionsForSocialCauses
      contextRef="From2026-01-012026-06-30_custom_FundacionTecnoglassMember"
      decimals="-3"
      id="Fact001477"
      unitRef="USD">2426000</TGLS:CashContributionsForSocialCauses>
    <TGLS:CashContributionsForSocialCauses
      contextRef="From2025-04-012025-06-30_custom_FundacionTecnoglassMember"
      decimals="-3"
      id="Fact001479"
      unitRef="USD">998000</TGLS:CashContributionsForSocialCauses>
    <TGLS:CashContributionsForSocialCauses
      contextRef="From2025-01-012025-06-30_custom_FundacionTecnoglassMember"
      decimals="-3"
      id="Fact001481"
      unitRef="USD">2046000</TGLS:CashContributionsForSocialCauses>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001483"
      unitRef="USD">448000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001485"
      unitRef="USD">604000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001487"
      unitRef="USD">785000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001489"
      unitRef="USD">1168000</us-gaap:Revenues>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2026-06-30_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001491"
      unitRef="USD">359000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2025-12-31_custom_PrismaGlassLLCMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001493"
      unitRef="USD">404000</us-gaap:AccountsReceivableNet>
    <TGLS:PurchasePriceOfFuel
      contextRef="From2026-04-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001495"
      unitRef="USD">462000</TGLS:PurchasePriceOfFuel>
    <TGLS:PurchasePriceOfFuel
      contextRef="From2026-01-012026-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001497"
      unitRef="USD">846000</TGLS:PurchasePriceOfFuel>
    <TGLS:PurchasePriceOfFuel
      contextRef="From2025-04-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001499"
      unitRef="USD">131000</TGLS:PurchasePriceOfFuel>
    <TGLS:PurchasePriceOfFuel
      contextRef="From2025-01-012025-06-30_custom_CEOAndCOOMember_custom_SantaMariaDelMarSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001501"
      unitRef="USD">719000</TGLS:PurchasePriceOfFuel>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2025-06-30_custom_StormArmourSolutionsLLCMember"
      decimals="INF"
      id="Fact001503"
      unitRef="Pure">0.60</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:Investments
      contextRef="AsOf2026-06-30_custom_StormArmourSolutionsLLCMember"
      decimals="-3"
      id="Fact001505"
      unitRef="USD">901000</us-gaap:Investments>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001507"
      unitRef="USD">427000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2025-12-31_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001509"
      unitRef="USD">403000</us-gaap:AccountsReceivableNet>
    <us-gaap:Revenues
      contextRef="From2026-04-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001511"
      unitRef="USD">51000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2026-01-012026-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001513"
      unitRef="USD">145000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-04-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001515"
      unitRef="USD">294000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-012025-06-30_custom_StudioAvantiSASMember_us-gaap_RelatedPartyMember"
      decimals="-3"
      id="Fact001517"
      unitRef="USD">532000</us-gaap:Revenues>
    <us-gaap:MinorityInterestOwnershipPercentageByParent
      contextRef="AsOf2019-05-03_custom_VidrioAndinoMember"
      decimals="INF"
      id="Fact001519"
      unitRef="Pure">0.258</us-gaap:MinorityInterestOwnershipPercentageByParent>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2020-12-082020-12-09_custom_VidrioAndinoMember"
      decimals="-6"
      id="Fact001521"
      unitRef="USD">45000000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="From2020-12-082020-12-09_custom_VidrioAndinoMember"
      decimals="-5"
      id="Fact001523"
      unitRef="USD">34100000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand
      contextRef="AsOf2020-12-09_custom_VidrioAndinoMember"
      decimals="-5"
      id="Fact001525"
      unitRef="USD">10900000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLand>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="From2020-10-282020-10-28_custom_VidrioAndinoMember"
      decimals="INF"
      id="Fact001527"
      unitRef="Shares">1557142</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:SharesIssuedPricePerShare
      contextRef="AsOf2020-10-28_custom_VidrioAndinoMember"
      decimals="INF"
      id="Fact001529"
      unitRef="USDPShares">7.00</us-gaap:SharesIssuedPricePerShare>
    <TGLS:PremiumClosingStockPercentage
      contextRef="AsOf2020-10-27_custom_VidrioAndinoMember"
      decimals="INF"
      id="Fact001531"
      unitRef="Pure">0.33</TGLS:PremiumClosingStockPercentage>
    <TGLS:ExpectedOwnershipPercentage
      contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember"
      decimals="INF"
      id="Fact001533"
      unitRef="Pure">0.258</TGLS:ExpectedOwnershipPercentage>
    <TGLS:FutureAdditionalContributionAmount
      contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember"
      decimals="-5"
      id="Fact001535"
      unitRef="USD">12500000</TGLS:FutureAdditionalContributionAmount>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="From2026-04-012026-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001537"
      unitRef="USD">9352000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001539"
      unitRef="USD">17393000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="From2025-04-012025-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001541"
      unitRef="USD">10633000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="From2025-01-012025-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001543"
      unitRef="USD">19678000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:AccountsPayableCurrent
      contextRef="AsOf2026-06-30_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862468"
      decimals="-3"
      id="Fact001545"
      unitRef="USD">5131000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="AsOf2025-12-31_custom_VidrioAndinoMember_us-gaap_RelatedPartyMember6862484"
      decimals="-3"
      id="Fact001547"
      unitRef="USD">5717000</us-gaap:AccountsPayableCurrent>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="From2026-04-012026-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001549"
      unitRef="USD">159000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="From2026-01-012026-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001551"
      unitRef="USD">3000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="From2025-04-012025-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001553"
      unitRef="USD">941000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="From2025-01-012025-06-30_custom_VidrioAndinoMember"
      decimals="-3"
      id="Fact001555"
      unitRef="USD">2258000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:Investments
      contextRef="AsOf2026-06-30_custom_ZofracostaSAMember"
      decimals="-3"
      id="Fact001557"
      unitRef="USD">883000</us-gaap:Investments>
    <us-gaap:Investments
      contextRef="AsOf2025-12-31_custom_ZofracostaSAMember"
      decimals="-3"
      id="Fact001559"
      unitRef="USD">810000</us-gaap:Investments>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001561">&lt;p id="xdx_80D_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zypxtQAl2bSi" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
12. &lt;span id="xdx_82D_zkoAw6mjD5Id"&gt;Shareholders&#x2019; Equity&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Dividends&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
June 10, 2026, the Company declared a regular quarterly dividend of $&lt;span id="xdx_900_eus-gaap--SharePrice_iI_pid_c20260318__us-gaap--AwardTypeAxis__custom--QuarterlyRateMember_zW5A8ZrJ1Tzg" title="Declared per share"&gt;0.15&lt;/span&gt;per share, or $&lt;span id="xdx_901_eus-gaap--SharePrice_iI_pid_c20260318__us-gaap--AwardTypeAxis__custom--AnnualBasisMember_zdN81T8mhTOi" title="Share price"&gt;0.60&lt;/span&gt; per share on an annualized basis. The dividend
was paid on July 31, 2026, to shareholders of record as of the close of business on June 30, 2026.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Earnings
per Share&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zwMLxdiSYyfc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table sets forth the computation of the basic and diluted earnings per share for the three and six months ended June 30, 2026
and 2025:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_z8VjupJubIij" style="display: none"&gt;Schedule of Earnings Per Share, Basic and Diluted&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20260401__20260630_z19WjrnNjtse" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20250401__20250630_zUgwseg41kU6" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20260101__20260630_zVuScfm19hGk" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20250101__20250630_zEPKjPo0IOzc" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Three
months ended June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-right: 0pt; margin-left: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Six
months ended June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;Numerator for basic and diluted earnings per share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--NetIncomeLoss_pn3n3_zMqOZExWCnbe" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;Net Income attributable to parent&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;24,555&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;44,083&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;56,446&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;86,272&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="font-weight: bold"&gt;Denominator&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zc4zDLzjyfuj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Denominator for basic earnings per ordinary share - weighted average shares outstanding&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;44,364,801&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;46,988,155&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;44,497,265&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;46,989,650&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--EffectOfDilutiveSecuritiesAndStockDividend_pid_zhuPwpmVUF1j" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Effect of dilutive securities and stock dividend&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zO6yER9Llm29" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Denominator for diluted earnings per ordinary share - weighted average shares outstanding&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;44,364,801&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;46,988,155&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;44,497,265&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;46,989,650&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--EarningsPerShareBasic_pid_zXyHF1VeU2e8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Basic earnings per ordinary share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.55&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.27&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.84&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--EarningsPerShareDiluted_pid_zxmUn3cZOrl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Diluted earnings per ordinary share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.55&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.27&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.84&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AD_zkEZct4Zo7qc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;/span&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Treasury
Stock&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the six months ended June 30, 2026, the Company repurchased &lt;span id="xdx_907_eus-gaap--TreasuryStockSharesAcquired_pid_c20260101__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zjHBd5vF7Ydg" title="Number of shares repurchased"&gt;372,910&lt;/span&gt; shares for an aggregate purchase price of $&lt;span id="xdx_909_eus-gaap--TreasuryStockValueAcquiredCostMethod_iN_pn5n6_di_c20260101__20260630__us-gaap--StatementEquityComponentsAxis__us-gaap--TreasuryStockCommonMember_zeEdqk81gXUi" title="Value of shares repurchased"&gt;16.5&lt;/span&gt; million as part of
its existing share repurchase program to enhance long-term stockholders value. Treasury stock is recorded at cost and presented as a
reduction of stockholders&#x2019; equity in the accompanying Consolidated Balance Sheets. As of June 30, 2026, treasury shares are carried
at their aggregate repurchase cost of $&lt;span id="xdx_904_eus-gaap--TreasuryStockValue_iI_pn3n3_c20260630_zXxcoQEA8V67" title="Treasury shares, aggregate repurchase cost"&gt;95,679&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:SharePrice
      contextRef="AsOf2026-03-18_custom_QuarterlyRateMember"
      decimals="INF"
      id="Fact001563"
      unitRef="USDPShares">0.15</us-gaap:SharePrice>
    <us-gaap:SharePrice
      contextRef="AsOf2026-03-18_custom_AnnualBasisMember"
      decimals="INF"
      id="Fact001565"
      unitRef="USDPShares">0.60</us-gaap:SharePrice>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001567">&lt;p id="xdx_898_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zwMLxdiSYyfc" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table sets forth the computation of the basic and diluted earnings per share for the three and six months ended June 30, 2026
and 2025:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_z8VjupJubIij" style="display: none"&gt;Schedule of Earnings Per Share, Basic and Diluted&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20260401__20260630_z19WjrnNjtse" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20250401__20250630_zUgwseg41kU6" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_498_20260101__20260630_zVuScfm19hGk" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20250101__20250630_zEPKjPo0IOzc" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Three
months ended June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1pt solid; text-align: center; vertical-align: bottom"&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-right: 0pt; margin-left: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Six
months ended June 30,&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2026&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; font-weight: bold; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; font-weight: bold; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1pt solid; text-align: center; font-weight: bold; vertical-align: bottom"&gt;2025&lt;/td&gt;&lt;td style="padding-bottom: 1pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold; text-align: left"&gt;Numerator for basic and diluted earnings per share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--NetIncomeLoss_pn3n3_zMqOZExWCnbe" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 36%; text-align: left"&gt;Net Income attributable to parent&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;24,555&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;44,083&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;56,446&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 12%; text-align: right"&gt;86,272&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="font-weight: bold"&gt;Denominator&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_pid_zc4zDLzjyfuj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1pt"&gt;Denominator for basic earnings per ordinary share - weighted average shares outstanding&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;44,364,801&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;46,988,155&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;44,497,265&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;46,989,650&lt;/td&gt;&lt;td style="padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--EffectOfDilutiveSecuritiesAndStockDividend_pid_zhuPwpmVUF1j" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Effect of dilutive securities and stock dividend&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_pid_zO6yER9Llm29" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Denominator for diluted earnings per ordinary share - weighted average shares outstanding&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;44,364,801&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;46,988,155&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;44,497,265&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;46,989,650&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--EarningsPerShareBasic_pid_zXyHF1VeU2e8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Basic earnings per ordinary share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.55&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.27&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.84&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--EarningsPerShareDiluted_pid_zxmUn3cZOrl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Diluted earnings per ordinary share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.55&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;0.94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.27&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.84&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="From2026-04-012026-06-30"
      decimals="-3"
      id="Fact001569"
      unitRef="USD">24555000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-04-012025-06-30"
      decimals="-3"
      id="Fact001570"
      unitRef="USD">44083000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2026-01-01to2026-06-30"
      decimals="-3"
      id="Fact001571"
      unitRef="USD">56446000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-012025-06-30"
      decimals="-3"
      id="Fact001572"
      unitRef="USD">86272000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact001574"
      unitRef="Shares">44364801</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact001575"
      unitRef="Shares">46988155</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact001576"
      unitRef="Shares">44497265</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact001577"
      unitRef="Shares">46989650</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact001584"
      unitRef="Shares">44364801</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact001585"
      unitRef="Shares">46988155</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact001586"
      unitRef="Shares">44497265</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact001587"
      unitRef="Shares">46989650</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact001589"
      unitRef="USDPShares">0.55</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact001590"
      unitRef="USDPShares">0.94</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact001591"
      unitRef="USDPShares">1.27</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact001592"
      unitRef="USDPShares">1.84</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2026-04-012026-06-30"
      decimals="INF"
      id="Fact001594"
      unitRef="USDPShares">0.55</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2025-04-012025-06-30"
      decimals="INF"
      id="Fact001595"
      unitRef="USDPShares">0.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2026-01-01to2026-06-30"
      decimals="INF"
      id="Fact001596"
      unitRef="USDPShares">1.27</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2025-01-012025-06-30"
      decimals="INF"
      id="Fact001597"
      unitRef="USDPShares">1.84</us-gaap:EarningsPerShareDiluted>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="From2026-01-012026-06-30_us-gaap_TreasuryStockCommonMember"
      decimals="INF"
      id="Fact001599"
      unitRef="Shares">372910</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="From2026-01-012026-06-30_us-gaap_TreasuryStockCommonMember"
      decimals="-5"
      id="Fact001601"
      unitRef="USD">-16500000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValue
      contextRef="AsOf2026-06-30"
      decimals="-3"
      id="Fact001603"
      unitRef="USD">95679000</us-gaap:TreasuryStockValue>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="From2026-01-01to2026-06-30" id="Fact001605">&lt;p id="xdx_805_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zUPvuKiRWZm8" style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
13. &lt;span id="xdx_82E_zehRMESBUsVb"&gt;Commitments and Contingencies&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;Commitments&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of June 30, 2026, the Company had outstanding obligations to purchase an aggregate of at least $&lt;span id="xdx_90D_eus-gaap--LongTermPurchaseCommitmentAmount_pn3n3_c20260101__20260630__srt--RangeAxis__srt--MinimumMember__srt--StatementScenarioAxis__custom--FebruaryTwentyEightThousandThirtyThreeMember_zHNWxYSrROmg" title="Purchase of aggregate raw material"&gt;151,878&lt;/span&gt; of certain raw materials from
a specific supplier before February 28, 2030, and an aggregate of at least $&lt;span id="xdx_90C_eus-gaap--LongTermPurchaseCommitmentAmount_pn3n3_c20260101__20260630__srt--RangeAxis__srt--MinimumMember__srt--StatementScenarioAxis__custom--ThroughTwoThousandTwentyEightMember_zBdJl84NyOg5" title="Purchase of aggregate raw material"&gt;8,364&lt;/span&gt; of certain raw materials from a specific supplier through
2028.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;i&gt;General
Legal Matters&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;From
time to time, the Company is involved in legal matters arising in the regular course of business. Some disputes are derived directly
from our construction projects, related to supply and installation, and even though deemed ordinary, they may involve significant monetary
damages. We are also subject to other type of litigations arising from employment practices, worker&#x2019;s compensation, automobile
claims and general liability. It is very difficult to predict precisely what the outcome of these litigations might be. However, with
the information at our disposition as this time, there are no indications that such claims will result in a material adverse effect on
the business, financial condition or results of operations of the Company.&lt;/span&gt;&lt;/p&gt;

</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="From2026-01-012026-06-30_srt_MinimumMember_custom_FebruaryTwentyEightThousandThirtyThreeMember"
      decimals="-3"
      id="Fact001607"
      unitRef="USD">151878000</us-gaap:LongTermPurchaseCommitmentAmount>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="From2026-01-012026-06-30_srt_MinimumMember_custom_ThroughTwoThousandTwentyEightMember"
      decimals="-3"
      id="Fact001609"
      unitRef="USD">8364000</us-gaap:LongTermPurchaseCommitmentAmount>
    <ecd:Rule10b51ArrAdoptedFlag contextRef="From2026-04-012026-06-30" id="Fact001610">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrAdoptedFlag contextRef="From2026-04-012026-06-30" id="Fact001611">false</ecd:NonRule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrTrmntdFlag contextRef="From2026-04-012026-06-30" id="Fact001612">false</ecd:Rule10b51ArrTrmntdFlag>
    <ecd:NonRule10b51ArrTrmntdFlag contextRef="From2026-04-012026-06-30" id="Fact001613">false</ecd:NonRule10b51ArrTrmntdFlag>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
